1.static_cast<需要准换的类型>
编译时进行转换类型检查,可用于整型实型转换,继承关系中的子类对象转换为父类对象,void*与其他类型指针的转换。不可用于指针类型之间的转换。
2.dynamic_cast<需要准换的类型>
运行时类型识别和检查,主要用于父类型和子类型之间转换,父类型指针指向子类型对象,然后用dynamic_cast将父类型指针转换为子类型指针
3.const_cast<需要准换的类型>
编译时进行类型转换,去除指针或引用的const属性
4.reinterpret_cast<需要准换的类型>
处理无关类型的转换,什么都可以转