300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > C++ 基类 子对象 派生类构造函数调用顺序

C++ 基类 子对象 派生类构造函数调用顺序

时间:2020-08-25 11:25:33

相关推荐

C++ 基类 子对象 派生类构造函数调用顺序

#include <iostream>using namespace std;class A {public:A( ) {cout << "A Constructor………" << endl;}~A( ) {cout << "A Destructor………" << endl;}};class B: public A {public:B( ) {cout << "B Constructor………" << endl;}~B( ) {cout << "B Destructor………" << endl;}};int main() {B b;return 0;}

#include <iostream>using namespace std;class A {public:A( ) {cout << "A Constructor………" << endl;}~A( ) {cout << "A Destructor………" << endl;}};class B {public:B( ) {cout << "B Constructor………" << endl;}~B( ) {cout << "B Destructor………" << endl;}};class C: public A, B {//构造函数调用顺序,先A后B,和书写(继承)顺序相同public:C( ) {cout << "C Constructor………" << endl;}~C( ) {cout << "C Destructor………" << endl;}};int main() {C c;return 0;}

#include <iostream>using namespace std;class B1 {public:B1() {cout << "constructing B1 " << endl;}};class B2 {public:B2() {cout << "constructing B2 " << endl;}};class B3 {public:B3() {cout << "constructing B3 " << endl;}};class C {public:C(): memberB1(), memberB2(), memberB3() {}private://构造函数的调用顺序和对象的创建先后顺序有关B2 memberB2;B1 memberB1;B3 memberB3;};int main() {C obj;// B2 B1 B3return 0;}

#include <iostream>using namespace std;class A {public:A() {cout << "A Constructor………" << endl;}~A() {cout << "A Destructor………" << endl;}};class B {public:B() {cout << "B Constructor………" << endl;}~B() {cout << "B Destructor………" << endl;}};class C: public A {private:B obj_b;public:C() {cout << "C Constructor………" << endl;}~C() {cout << "C Destructor………" << endl;}};int main() {C obj;return 0;}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。