目的:
实现类型的自动转换
特点:
只有一个参数
不是复制构造函数
代码:
class Complex { public: Complex(double x2); ~Complex(); private: double f1, f2; }; Complex::Complex(double i) { //类型转换构造函数 printf("IntConstructor called\n"); }
Complex c1 = 12;//这是初始化,并不是发生转换,与第三行等价 c1 = 13;//13被自动转换成一个临时Complex对象 Complex c2(12);