回答

1
class A 
{ 
    A(int a = 0) 
    { 
     std::cout << a; 
    } 
}; 

只是用默認值預定義參數。

5

一個默認的構造,每標準(12.1/4),是:

甲 默認 構造一類 X 是類的構造函數 X 可以在沒有一個參數來調用

所以,你只需要提供的參數的默認值:

class Foo 
{ 
public: 
    Foo(int a = 6) 
    { 

    } 
}; 

int main() 
{ 
    Foo obj; 
} 
0

當一個構造函數可以被調用時沒有參數時,它被稱爲默認構造函數。

但是,帶參數的構造函數在其參數被賦予默認值時可以變成默認構造函數。

例如:

class String { 
public: 
    String(const char∗ p = ""); // default constructor : empty string 
    // ... 
}