C++类型转换总结

explicit与类型运算符

背景

类类型转换

类型转换分类

  1. 隐式类型转换/系统转换
  2. 数值类型从低精度到高精度的转换
    char->short->int->long->long long
    char->short->int->float->double
  3. 具体指针类型(变量指针、函数指针)转换成void*
    T* -> void*
  4. 数组类型转化成指针类型
    T[] -> T*
  5. 通过单参构造函数转换成对象char* -> string
  6. 通过重载类型运算符
  7. 显式类型转换/强制转换
  8. 数值类型从高到低
    static_cast<>
  9. void*转成具体指针类型
    reinterpret_cast<>
  10. const转非const
    const_cast<>
  11. 从多态基类指针/引用转成子类指针/引用
    dynamic_cast<>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • C++类型转换总结 本章内容:1 前言2 static_cast3 dynamic_cast4 const_cas...
    Haley_2013阅读 959评论 0 50
  • 前言 把《C++ Primer》[https://book.douban.com/subject/25708312...
    尤汐Yogy阅读 9,541评论 1 51
  • 第一类:逻辑型boolean 第二类:文本型char 第三类:整数型(byte、short、int、long) c...
    Jasonme阅读 1,115评论 0 4
  • 相关章节 「C++类的特殊成员函数(1):构造函数」中“3 隐式类类型转换” 考虑下面的例子: 在计算ival的值...
    木雁之阅读 1,112评论 0 0
  • 我带着我的漫画书坐在岸边, 看帆影掠过身际, 听浪花簪湿耳畔。 挥手 相约莫名的思恋, 呼唤 期许未知的彼岸。 心...
    得过且过客阅读 257评论 0 2