[英]constructor as default argument
假設我有2節課
class B
{
B() { /* BLA BLA */ };
B(int a) { /* BLA BLA */ };
B(int a,int b) { /* BLA BLA */ };
}
class A {
public :
A(B par);
}
我想知道如何像B的每個構造函數那樣調用具有不正確參數的par的A的構造函數。 (當然,我想看看3個示例,我不希望它們全部並存)
謝謝
您可以執行以下操作:
A(B par = B())
A(B par = B(1))
A(B par = B(1,2))
根據注釋的完整代碼:
class B
{
public:
B() { };
B(int a) {};
B(int a,int b) {};
};
class A {
public :
A(B par = B()/* or B(1) or B(1,2) */);
};
A(B());//create a B object and pass it to A
A(B(1));
A(B(1,2));
或為A定義3個不同的構造函數(但這對我來說聽起來不太好)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.