類的初始化順序實例

#include <iostream>
using namespace std;

class A{
public:
	A(int a){
		cout << a << "...." << endl;
	}
};
class B:virtual public A{
public:
	B(int a,int b,int c):aa(b),A(a){
		cout << c << "..." << endl;
	}
	virtual void func(){
		cout << "B..." << endl;
	}
private:
	A aa;
};

int main(){
	B(1,2,3);//先A,再aa,最後B;在這個基礎上只看聲明順序而非在列表中順序來初始化

	return 0;
}

發佈了231 篇原創文章 · 獲贊 36 · 訪問量 142萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章