1 类型转换名称和语法
C 风格的强制类型转换(Type Cast)很简单,不管什么类型的转换统统是:
TYPE b = (TYPE)a
C++ 风格的类型转换提供了4 种类型转换操作符来应对不同场合的应用。
-
static_cast 静态类型转换。如int转换成char
-
reinterpreter_cast 重新解释类型
-
dynamic_cast 命名上理解是动态类型转换。如子类和父类之间的多态类型转换。
-
const_cast, 字面上理解就是去const属性。 4种类型转换的格式:
TYPE B = static_cast<TYPE> (a)
类型转换一般性介绍
1)static_cast<>() 静态类型转换,编译的时c++编译器会做类型检查;
基本类型能转换 但是不能转换指针类型
2)若不同类型之间,进行强制类型转换,用reinterpret_cast<>() 进行重新解释
3)一般性结论:
C语言中 能隐式类型转换的,在c++中可用 static_cast<>()进行类型转换。