- 1、static_cast
- 2、dynamic_cast
- 3、const_cast
- 4、reinterpret_cast 强类型转换(任何类型)
支持基础类型和具有基础关系 之间的转换
int a = 65; // static_cast<转换之后的类型>(需要转的); char c = static_cast(a); cout< 2、dynamic_cast 具有继承关系的,在转换前会类型检查(例如:父转子不可以,因为子类肯定是大于等于父类)
class A{}; class B{}; class C:public B{}; B* b = NULL; C* c = NULL; // 用法都是一样,只是使用场景不同 b = dynamic_cast(c);3、const_cast去掉const,和加上cosnt
int a =10; int* p = &a; const int* b = const_cast4、reinterpret_cast 强类型转换(任何类型)(p); class A{}; class B{}; class C:public B{}; B* b = NULL; int a = 65; b = reinterpret_cast(a);



