标签:
多态(一个接口,多种实现)允许将子类类型的指针复制给父类类型的指针
向上转换:派生类转换为基类,总是合法和自动的
向下转换:基类转换为派生类,不会自动
C++中,只有一个参数的构造函数,可以将类型与该参数相同的值转换为类
例:构造函数
Stonewt(double lbs);
则可以有:Stonewt myCat=19.6;
程序使用构造函数Stonewt(double)来创建一个临时的Stonewt对象,将将19.6作为初始值。随后,采用逐成员赋值的方法将该临时对象的内容复制到myCat中,这个过程称为隐式转换
然而,这种自动特性也不总是需要的,可以使用explicit来关闭这种自动特性,此时可以写为:
explicit Stonewt(double lbs);
这样就关闭了隐式转换,但可以显式转换(显式强制转换)
此时,Stonewt myCat;
myCat=19.6;/////不允许
要写为:myCat=Stonewt(19.6);
标签:
原文地址:http://www.cnblogs.com/guxuanqing/p/4909959.html