class Empty
{
public:/*Empty();//默認構造函數Empty(const Empty& rhs);//拷貝構造函數~Empty();//析構函數Empty& operator=(const Empty& rhs);//賦值函數Empty* operator&();//取地址運算符const Empty* operator&() const;//取址運算符 const */
protected:
private:
};
void main()
{Empty a;Empty b=a;Empty* c=&a;Empty d(a);}
上述程序可以在MSVC2008上可以運行。表明一個空類可以產生六個成員函數,分別是默認構造函數,拷貝構造函數,析構函數,賦值函數,取地址運算符,取地址運算符const.當然,所有這些只有當被需要才會產生。比如你定義了一個類,但從來定義過該類的對象,也沒使用過該類型的函數參數,那么基本啥也不會產生。在比如你從來沒有進行過該類型對象之間的賦值,那么operator=不會被產生。