C++ 四种新式转换

const_cast<T> (expression)

//用于将对象的常量性移除,只有const_cast能做到
//移除const 和 volatile 属性

dynamic_cast<T> (expression)

//安全的向下转型 用于子类转父类
//父类转子类,但访问子类时会越界
// 耗费重大运行成本
//转换失败返回NULL
//基类必需含有虚函数,保持多态性

reinterpret_cast<T> (expression)

//意图执行低级转型 实际动作取决于编译器
//仅重新解释类型,但没有进行二进制的转换
//可以把一个指针转换成一个整数
//最普通的用途就是在函数指针类型之间进行转换。

static_cast<T> (expression)

//强迫隐式转换  

T(expression)
(T)expression

//c中的旧时转换,效果与static_cast  差不多

おすすめ

転載: blog.csdn.net/weixin_53022668/article/details/120963491