-
标准的显式转换
标准呢写法的显式转换
一、使用构造函数
来实现类型转换
- 我们把
单参的构造器
称之为类型转换构造器
。
可以使用在赋值
和传参
的情景下。
类似于这种——
类型转换构造器
在我们要进行不同类型间的
转换
或者赋值
的时候,都会先进入这个构造器
进行类型的转换(Point2D
转化为Point3D
),然后如果需要赋值,则会要进行赋值运算符重载
——
赋值运算符重载
二、explicit关键字
- 如果我们在构造器的前面加一个关键字
explicit
——
加一个explicit
之前我们的转换赋值
可以这样写——

但是,有了explicit后,只能有下面2种写法——

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

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