构造函数,顾名思义,新构造一个对象。如下调用的就是普通的构造函数:
String s="cde";
拷贝构造函数,顾名思义,也是一种构造函数,特殊的构造函数,用一个已存在的对象初始化一个新的对象,就是拷贝构造函数。如下调用的就是拷贝构造函数,用已经存在的string s去初始化新的对象a:
String a(s);
String a=s;
拷贝构造函数声明如下:(以String为例子)
String(); //constructor String(const char *s); //constructor String(const String &other); //copy constructor
运算符重载的声明如下:
1 String &operator=(String &other); //operator overloading
拷贝构造函数和=运算符重载的区别:
前者用于初始化新的对象,而后者用于给已存在的对象赋值。下面两句话说明一切,用心体会,所使用的阶段不一样。
String a=b; //copy constructor a=b; //operator overloading