C++四种转换
C++四种转换:static_cast , dynamic_cast , const_cast , reinterpret_cast
1.static_cast
实现C++中内置基本数据类型之间的相互转换;如果涉及到类的话,static_cast只能在有相互联系的类型中进行相互转换,不一定包含虚函数
2.const_cast
在同一数据类型之间加上或者去掉const属性
3.reinterpret_cast
-将内置的数据类型为其他任何的数据类型;将指针转化为其他类型的指针;将内置数据类型转化为指针;
2.dynamic_cast(用在继承体系中,基类与子类之间指针或引用的转换 )
(1)dynamic_cast是运行时处理的,运行时要进行类型检查
(2)不能用于内置的基本数据类型的强制转换(3)转换如果成功的话返回的是指向类的指针或引用,转换失败的话则会返回NULL(4)使用dynamic_cast进行转换的,基类中一定要有虚函数,否则编译不通过

浙公网安备 33010602011771号