使用场景

static_cast 静态类型转换。如int转化成char
reinterpret_cast 重新解释类型
dynamic_cast 命名上理解是动态类型转换,如子类和父类之间的多态类型转换
const_cast 字面上理解就是去const属性

类型转换介绍

static_cast<>() 静态类型转换,编译时c++编译器会做类型检查
若不同类型之间,进行强制类型转换,reinterpret_cast<>() 进行重新编译
dynamic_cast<>() 动态类型转换,安全的基类和子类之间转换,运行时类型检查
const_cast<>() 去除变量的只读属性

三种使用形式

dynamic_cast<type*> (e) //e必须为指针
dynamic_cast<type&> (e) // e 必须为一个左值
dynamic_cast<type&&> (e) //e不能是左值

参考

https://blog.csdn.net/lpl312905509/article/details/104046600

C++ static_cast和dynamic_cast相关推荐

  1. static_cast、dynamic_cast、const_cast和reinterpret_cast总结

    前言 这篇文章总结的是C++中的类型转换,这些小的知识点,有的时候,自己不是很注意,但是在实际开发中确实经常使用的.俗话说的好,不懂自己写的代码的程序员,不是好的程序员:如果一个程序员对于自己写的代码 ...

  2. C/C++ 之 C++强制类型转换(static_cast、dynamic_cast、const_cast、reinterpret_cast)

    文章转载自:https://www.cnblogs.com/chenyangchun/p/6795923.html .在了解这块时,发现了这篇文档,感觉写的很不错! c强制转换与c++强制转换 c 语 ...

  3. 标准C++的类型转换符:static_cast、dynamic_cast、reinterpret_cast和const_cast(转载)

    C 风格(C-style)强制转型如下: (T) exdivssion // cast exdivssion to be of type T 函数风格(Function-style)强制转型使用这样的 ...

  4. static_cast、dynamic_cast、reinterpret_cast、const_cast[转]

    C-style cast举例: int i; double d; i = (int) d; 上面的代码就是本来为double类型的d,通过(int)d将其转换成整形值,并将该值赋给整形变量i (注意d ...

  5. static_cast、dynamic_cast、reinterpret_cast、和const_cast

    (转自http://hi.baidu.com/seekvista/blog/item/87845a60ae248845ebf8f8dd.html) 关于强制类型转换的问题,很多书都讨论过,写的最详细的 ...

  6. static_cast与dynamic_cast转换

    static_cast与dynamic_cast转换 C语言中两种类型转换 隐式转换和显式转换 隐式转换:不同数据类型之间赋值和运算,函数调用传递参数,由编译器完成. char ch; int i = ...

  7. C++类型转换运算符 static_cast,dynamic_cast,reinterpret_cast,const_cast

    类型转换是一种让程序猿可以临时或永久性改变编译器对对象的解释机制.可改变对象解释方式的运算符称为类型转换运算符. 为何须要进行类型转换 通常为了实现使用不同环境的个人和厂商编写的模块可以相互调用和协作 ...

  8. 标准C++的类型转换符:static_cast、dynamic_cast、reinterpret_cast和const_cast

    C 风格(C-style)强制转型如下: (T) exdivssion // cast exdivssion to be of type T 函数风格(Function-style)强制转型使用这样的 ...

  9. 常规投放vs. static_cast与dynamic_cast [重复]

    class="question-status question-originals-of-duplicate"> 这个问题已经在这里有了答案: 什么时候应该使用static_ ...

  10. c++ 数据类型转换: static_cast、dynamic_cast、reinterpret_cast和const_cast

    [目录] 引言 static_cast 定义 dynamic_cast 定义 举例:下行转换(把基类的指针或引用转换成子类表示) 举例:上行转换(把子类的指针或引用转换成基类表示) 举例: stati ...

最新文章

  1. asp.net 操作excel的实现代码
  2. FAIR 训练 AI 玩拳击,效果堪比真人比赛,试探+周旋+爆头
  3. Android中的资源访问
  4. python发声-python写报警程序中的声音实现winsound
  5. python的装饰器迭代器与生成器_python3 装饰器、列表生成器、迭代器、内置方法详解等(第四周)...
  6. 20145207 《Java程序设计》第4周学习总结
  7. 14.6 Spring MVC 测试框架(翻译)
  8. 模型师对初学者的经验之谈
  9. ​腾讯内测全新 Tim 3.0,支持微信登录;滴滴顺风车上线夜间服务;Angular 9.1 发布 | 极客头条...
  10. c语言程序有哪几类词汇,c语言是什么 c语言必背词汇有哪些
  11. 洛谷P1957 口算练习题 题解
  12. 20中氨基酸名称、简写及化学式
  13. 安装程序将在重启您的计算机后黑屏,解决Windows 10登陆后黑屏问题
  14. 统计年鉴 付费下载 夏泽网
  15. linux iptable命令用法
  16. 对异地工作的一些看法
  17. C语言学习之指针 *p++、*(p++)、(*p)++
  18. ubuntu将cuda卸载干净
  19. hdu 4696 Answers
  20. 中国大数据产业版图:东南沿海继续引领 独角兽扎堆北上深杭

热门文章

  1. 从github下载的项目如何运行??---------本文以vue的项目为例
  2. 使用OData快速构建REST服务
  3. 页面静态化3 --- 伪静态技术
  4. 这辈子都没有好好的认认真真的过过一天
  5. for循环与each的区别
  6. 漫谈 Clustering (3): Gaussian Mixture Model
  7. 拓端tecdat:R语言KMEANS均值聚类和层次聚类:亚洲国家地区生活幸福质量异同可视化分析和选择最优聚类数
  8. 拓端tecdat|R使用LASSO回归预测股票收益
  9. bytes的json解析
  10. caffe绘制训练过程的loss和accuracy曲线