手机
当前位置:查字典教程网 >编程开发 >C语言 >深入C++四种强制类型转换的总结
深入C++四种强制类型转换的总结
摘要:c++中提供了四种新的强制转换分别是:const_cast、dynamic_cast、reinterpret_cast、static_cas...

c++中提供了四种新的强制转换分别是:const_cast、dynamic_cast、reinterpret_cast、static_cast.

这四种转换类型,每一种都适用于特定的目的:

const_cast 一般用于强制取消对象的常量性。它是唯一能够做到这一点的C++风格的强制转型。

dynamic_cast 主要用于执行"安全向下转型",也就是说,要确定一个对象是否是一个继承体系中的一个特定类型。它是唯一不能用旧风格语法执行强制转型。

reinterpret_cast 是特意用于底层转型,导致实现以来的结果,例如,将一个指针转换为一个整数。这样的强制转换在底层代码外英爱极为罕见。

static_cast 可以用于强制隐型转换,如non-const对象转换为const对象,int转换为double等。它还可以用于很多这样的转换的反向转换,例如:void*指针转型为有类型的指针,基指针转换为派生类指针,但是它不能讲一个const转换为non-const,它最接近C风格的转换。

【深入C++四种强制类型转换的总结】相关文章:

基于c++强制类型转换的(总结)详解

基于C++浮点数(float、double)类型数据比较与转换的详解

标准C++类string的Copy-On-Write技术

C++多继承同名隐藏实例详细介绍

关于C++中虚拟继承的一些总结分析

C++实现正态随机分布的方法

C++你最好不要做的几点小结

C++泛型算法的一些总结

深入jaxb xjc编码问题的详细介绍

深入分析C++中类的大小

精品推荐
分类导航