在c++中,有哪4个与类型转换相关的关键字,这些关键字各有什么特点,应该在什么场合下使用?

C++中,四个与类型转换相关的关键字:static_cast、const_cast、reinterpret_cast、dynamic_cast。

 

static_cast:主要在静态转换,编译处理期间使用。用于C++中内置的基本数据类型之间的转换,但是没有运行时类型的检测来保证转换的安全性。

const_cast:去常转换,编译时执行。const_cast操作不能在不同的种类间转换。相反,它仅仅把它作用的表达式转换成常量。它可以使一个本来不是const类型的数据转换成const类型的,或者把const属性去掉。 

reinterpret_cast:重解释类型转换 。它可以转化任何的内置数据类型为其他的类型,同时它也可以把任何类型的指针转化为其他的类型;它的机理是对二进制进行重新的解释,不会改变原来的格式。

dynamic_cast < type-id > ( expression ):该运算符将expression转换成type_id类型的对象。type_id必须是类的指针,类的引用或者空类型的指针。

 

posted on   方木Fengl  阅读(61)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
历史上的今天:
2020-03-12 作业进度-1
2020-03-12 pythoon爬虫(二十四) 正则表达式findall、sub、split、compile函数
2020-03-12 python爬虫(二十三) 正则表达式分组
2020-03-12 python爬虫(二十二) 正则表达式匹配多个字符

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示