美文网首页
C++类型转换

C++类型转换

作者: StevenHD | 来源:发表于2020-11-05 16:59 被阅读0次
    • 标准的显式转换


      标准呢写法的显式转换

    一、使用构造函数来实现类型转换

    • 我们把单参的构造器称之为类型转换构造器
      可以使用在赋值传参的情景下。
      类似于这种——
      类型转换构造器

    在我们要进行不同类型间的转换或者赋值的时候,都会先进入这个构造器进行类型的转换(Point2D转化为Point3D),然后如果需要赋值,则会要进行赋值运算符重载——

    赋值运算符重载

    二、explicit关键字

    • 如果我们在构造器的前面加一个关键字explicit——
      加一个explicit

    之前我们的转换赋值可以这样写——

    没有explicit的情况
    但是,有了explicit后,只能有下面2种写法——
    下面2种写法是对滴

    三、类型转换操作符函数

    之前的转换,如果是把2D转换为3D,则是要在3D的类中写转换构造函数。但是对于操作符函数,则是可以直接在2D类中写。这里我们在3D类中写一个3D转换为2D的函数。

    3D转2D的类型转换操作符函数

    调试的时候,则是转换的时候调用了2D的构造器,然后返回。

    相关文章

      网友评论

          本文标题:C++类型转换

          本文链接:https://www.haomeiwen.com/subject/kobovktx.html