C++类型转换运算符

C++中提供4中类型转运算符,分别是:static_cast、dynamic_cast、reinterpret_cast和const_cast;

语法格式如下:

类型转换运算符 < type_id> (expreession);

说明:type_id是目标类型;expression是原数据。

1、dynamic_cast:主要用于类层次间的上行转换和下行转换。当在类层次间上下行转换时,dynamic_cast和static_cast效果是一样的:当运行下行转换时,dynamic_cast具有类型检查功能,比static_cast更安全(dynamic_cast运算符还需要虚拟机制的支持)。

2、reinterpret_cast:可以把整形值转换为地址。C++编译器认为程序员十分了解此类强制转换带来的后果,因此,把它由此带来的不可预计的后果全部让程序员承担,这也是合理的。

3、const_cast:const_cast转换符是用来移除变量的const或volatile限定符。

你可能感兴趣的:(类型转换)