C风格的强制类型转换,格式如下两种: *①Class(exPRession); ②(Class)expression;* 第一:不安全,没有类型检查; 第二:可读性差,在代码中不容易发现做了类型转换。
C++的四类转换:reinterpret_cast,const_cast,static_cast,dynamic_cast。分别对应于不同的应用场景。
static_cast
对于static_cast来讲,对象指针的转换,向上转换是安全的,向下转换则不安全。 运行上面的代码,向下转换的时候代码可以执行,但执行完以后会报错如下:
const_cast
dynamic_cast
reinpreter_cast
谨慎使用reinpreter_cast!!!!
新闻热点
疑难解答
图片精选