四种cast转换

2021-01-25  本文已影响0人  Catherin_gao

1. c风格强制转换

int a=1;
char b=(char)a;

这种转换适用于面向过程的没有类的概念的c语言的转换,然而这样的转换符也能不分青红皂白的应用于类和类的指针,没有安全检查。

2. const_cast

*用法:const_cast<type_id> (expression)
*用于修改类型的const或volatile属性,一般用于强制消除对象的常量性,c中不提供消除这const的机制

3. static_cast

3.1 注意点

4. dynamic_cast

4.1 注意点

5. reinpreter_cast

5.1 注意点

(1) type_id可以是指针,引用,算术类型,函数指针或者成员指针,
(2) 这个操作符可以在非相关的类型之间转换,
(3) 操作只是简单的从一个指针到别的指针的值的二进制拷贝
(4) 在类型之间指向的内容不作任何类型的检查和转换。

上一篇 下一篇

猜你喜欢

热点阅读