1) 默认构造函数
2) 默认析构函数
3) 拷贝构造
4) 赋值函数
5) 缺省取值
6) 缺省取值(const)
对于后2个,之前还真没注意到是操作符重载,现在记录下:
#include <iostream> using namespace std; class MyClass { public: MyClass(int value) { mValue = value; } MyClass * operator & () { cout << "operator not const"<<mValue << endl; return this; } const MyClass * operator & () const { cout << "operator const"<<mValue<<endl; return this; } private: int mValue; }; int main() { MyClass c1(100); MyClass *d1 = &c1; const MyClass *d2 = &c1; const MyClass c3(200); const MyClass *d3 = &c3; return 0; }