C++类型转换构造函数 - 人工智能之路
为什么要有这玩意
传说中,是为了实现类型的自动转换
定义
只有一个参数,类型任意
意思是,把一个任意类型的变量,自动转换成我这个类型
#include <iostream>#include <stdio.h>using namespace std;class Complex {public: int real; int imaginary; Complex(int real) { this->real = real; this->imaginary = 0; cout << "Complex(int real)" << endl; } ~Complex() { cout << "~Complex() - " << real << endl; } };int main() { Complex c = 12; // 相当于下面那句// Complex c = Complex(12); // c变量是以Complex(12)的方式初始化 c = 10; // 相当于下面那句 // 创建一个临时对象,让后将临时对象的值拷贝给c,拷贝完成后临时对象销毁// c = Complex(10); return 0;}