定義:在未提供顯式的初始值時,用來建立物件的建構函式。
舉例:class testclass
private:
int m_a;
int m_b;
public:
testclass(); //預設建構函式1
testclass(int a,int b); //建構函式
testclass(int a=10,int b=5); //預設建構函式2
};//注意,實際運用時乙個類中預設建構函式1與預設建構函式2只能出現1個,這裡只是為了舉例說明
總結:1)預設建構函式主要是用來完成該形式的初始化的:testclass a; //在這種情況下,如果程式設計師沒有定義預設建構函式,編譯器會報錯。
2)如果程式設計師沒有提供任何建構函式,那麼編譯器會自動生成乙個預設建構函式。
3)定義預設建構函式有兩種方式,一是如上例中的預設建構函式1,定義乙個無參的建構函式;二是如上例中的預設建構函式2,定義乙個所有形參都有預設值的建構函式。
4)乙個類只能有乙個預設建構函式。
5)如果程式設計師提供了任何形式的建構函式,那麼編譯器就不會再提供預設建構函式了。
C 建構函式之預設建構函式
參考部落格 以下內容是在上述博主的部落格中提煉出來的 一 預設建構函式的含義是啥 主要就是 預設建構函式在呼叫的時候不需要顯示傳入實參的建構函式 二 預設的建構函式的分類 1 無參建構函式 就是沒有引數的建構函式 class sample 2 帶有形參,並且帶有預設值的建構函式 class samp...
C 學習之預設建構函式
當我們寫乙個空類而不新增任何 時,卻可以用它來建立物件,拷貝 賦值等操作。例如 include using namespace std class empty int main int argc,char args 執行上述程式發現並麼有報錯 這是因為編譯器給我們自動的生成了一些函式,包括,預設建構...
c 學習 預設建構函式
預設建構函式 default constructor 就是在沒有顯式提供初始化式時呼叫的建構函式。它由不帶引數的建構函式,或者為所有的 形參提供預設 實參的建構函式定義。如果定義某個類的變數時沒有提供初始化時就會使用預設建構函式。中文名預設建構函式 外文名default constructor 涉及...