C++ 旧式转型、类型转型方法
程序员文章站
2022-07-05 22:04:25
旧式转型:
1. C 风格的转型动作: (T) expression // 将 expression 转型为 T
2. 函数风格的转型动作: T ( expression )...
旧式转型:
1. C 风格的转型动作: (T) expression // 将 expression 转型为 T
2. 函数风格的转型动作: T ( expression ) // 将 T 转型为expression
C++ 类型转型:
1. const_cast 通常用来将对象的常量性转除。实现将const转换为non_const;它是唯一有此能力的操作符。
2. dynamic_cast 主要用来执行“安全向下转型”,即将基类类型对象的引用或指针转换为同一继承层次的派生类型的引用或指针。:Drived (&)drive = dynamic_cast < Drived (&)>(base);
3. reinterpret_cast 执行低级转换,通常为操作数的位模式提供较低层次的重新解释。例如将一个pointer to int 转型为一个 int 。
4. static_cast 强迫隐式转换。将non_const转换为const;将 int 转换为 double。同样也可以实现2中的将pointer_to_base转换为pointer_to_drived.
推荐阅读
-
c++ 模板类,方法返回值类型是typedef出来的,或者是auto,那么此方法在类外面如何定义?
-
C++把数字转为枚举类型的方法
-
2016年站长转型应该做什么类型的网站?
-
对继承与多态、成员变量的隐藏和方法重写、super关键字、final关键字、对象的上转型对象、抽象类的学习理解(java)
-
C++ 旧式转型、类型转型方法
-
最简单有效的决策方法论:谈谈企业数字化转型中的问题导向
-
C++实现模板中的非类型参数的方法
-
C#数据类型转换(显式转型、隐式转型、强制转型)
-
c++ 模板类,方法返回值类型是typedef出来的,或者是auto,那么此方法在类外面如何定义?
-
C++把数字转为枚举类型的方法