代碼打印所有的構造函數。我讀到構造函數在我們從另一個類派生一個類時沒有被繼承。那麼爲什麼創造c
從b
和a
爲什麼構造函數被調用,如果他們沒有被繼承?
class A
{
public:
A() { cout << "A's constructor called" << endl; }
};
class B
{
public:
B() { cout << "B's constructor called" << endl; }
};
class C: public B, public A // Note the order
{
public:
C() { cout << "C's constructor called" << endl; }
};
int main()
{
C c;
return 0;
}
[C++超類構造函數調用規則]的可能重複(http://stackoverflow.com/questions/120876/c-superclass-constructor-calling-rules) – Soeren