空類裡有哪些函式

冷靖_lengjing發表於2020-12-07

talk is cheap, show me the code!

轉https://www.cnblogs.com/dyc0113/p/3265212.html
C++的空類有哪些成員函式:
. 預設建構函式。
. 預設拷貝建構函式。
. 預設解構函式。
. 預設賦值運算子。
. 預設取址運算子。
. 預設取址運算子 const
注意:有些書上只是簡單的介紹了前四個函式。沒有提及後面這兩個函式。但後面這兩個函式也是空類的預設函式。另外需要注意的是,只有當實際使用這些函式的時候,編譯器才會去定義它們。

#include<iostream>
using namespace std;

//C++ 空類預設產生的類成員函式:預設建構函式,拷貝建構函式,解構函式,賦值運算子,取址運算子,取址運算子 const
class class1
{
public:
	class1(){}//預設建構函式

	class1(const class1&){}//拷貝建構函式

	~class1(){}//解構函式

	class1&operator=(const class1&){}//賦值運算子

	class1*operator&(){}//取址運算子

	const class1*operator&()const{}//取址運算子 const

};

//空類class2會產生class1一樣的成員函式

class class2
{
};

void main()
{
	class2 obj1;//建構函式

	class2 obj2;

	obj1=obj2;//賦值運算子


	&obj2;//取址運算子


	class2 obj3(obj1);//拷貝建構函式


	class2 const obj4;
	&obj4;//取址運算子 const

}

相關文章