C++空类默认生成的构造函数

来源:互联网 发布:网络安全问题 编辑:程序博客网 时间:2024/06/06 10:55

ISO/IEC 14882(C++的国际标准文件)中说明:

一个空类必须默认生成四个成员函数:
构造函数,析构函数,拷贝构造函数,赋值函数
  class Empty {
  public:
   Empty(); // 缺省构造函数
   Empty(const Empty& rhs); // 拷贝构造函数

   ~Empty(); // 析构函数 
   Empty&
 operator=(const Empty& rhs); // 赋值运算符
  };
有一点争议的是:
在《effective c++》中,大师说到一个类中应该包含六个默认成员函数,另外两个是
取址运算符和常取址运算符 
 Empty* operator&(); // address-of operators
 const Empty* operator&() const;