C++ 四种类型转换关键字介绍
来源:互联网 发布:js object to date 编辑:程序博客网 时间:2024/04/30 10:38
C++有四种类型转换关键字,分别是:
(1) . static_cast (2) const_cast (3) reinterpret_cast (4) dynamic_cast
这四种类型转换关键字分别使用在不同的情况下。下文对这四个关键字进行比较分析:
(1).static_cast : 可以实现C++中内置基本数据类型之间的转换,如果涉及到类的话,static_cast只能在相互联系的类型中进行相互转换,不一定包含虚函数。
(2).const_cast : 不能在不同种类间转换。相反,它仅仅把一个它作用的表达式转换成常量。它可以使一个本来不是const类型的数据转换成const类型的,或者把const属性去掉。
(3).reinterpret_cast: 有着和c风格的强制转换同样的能力。它可以转化任何内置的数据类型为其他任何的数据类型,也可以转换任何指针类型为其他的类型。它甚至可以转化内置的数据类型为指针,无需考虑类型安全或者常量的情形。不到万不得已,不要轻易使用。
(4).dynamic_cast :
<1> : 其他三种都是编译时完成的,dynamic_cast是运行时处理的,运行时要进行类型检查。
<2> :不能用于内置的基本数据类型的强制转换。
<3> : dynamic_cast转换如果成功的话,返回的是指向类的指针或者引用,转换失败的话则返回NULL。
<4> : 使用dynamic_cast进行转换时,基类中一定要有虚函数,否则编译不通过。
- C++ 四种类型转换关键字介绍
- c++四种类型转换关键字
- 关键字explicit&&c++四种类型转换相关关键字
- C++四种类型转换介绍
- c\c++复习基础要点09---关键字explicit c++四种类型转换
- C++/面试 - 四种类型转换(cast)的关键字 详解 及 代码
- c++四种类型转换关键字(转)
- C++四种类型转换的关键字及其特点
- C++四种类型转换的关键字及其特点
- C++ 四种类型转换的关键字及其特点
- C++四种类型转换的关键字及其特点
- C++四种类型转换的关键字及其特点
- C++四种类型转换的关键字及其特点
- 四种类型转换
- 四种类型转换
- 四种类型转换
- 四种类型转换
- C++四种类型转换
- Docker 通俗易懂的入门
- 浅谈“==”、equals和hashcode,以及map的遍历方法(可用作上一篇k-means博文参考)
- android信息传递方式之handler及looper总结应用方面
- 麻将扑克绝技,马洪刚扑克绝技揭秘
- 编写一个函数从一定的向量A中删除元素值在最小跟最大之间的所有元素
- C++ 四种类型转换关键字介绍
- java基础知识盘点
- C语言中的二级指针(1) -- 值传递问题
- 怎么样成为有钱人,网上赚钱就这么简单
- 使用MD5加密的登陆demo
- HDU 1142 A Walk Through the Forest (Dijkstra + 记忆化搜索 好题)
- mobl-lang 的反应性编程
- HDU1847 Good Luck in CET-4 Everybody!【博弈】
- 数据标准化