当前位置: 首页 > news >正文

网站关键词如何做竞价专业的外贸建站公司

网站关键词如何做竞价,专业的外贸建站公司,上海好的网站设计公司有哪些,注册公司不经营一年费用预备博客#xff1a; C虚继承中构造函数和析构函数顺序问题以及原理 C派生类含有成员对象构造函数析构函数顺序 C虚基类成员可见性 程序一如下#xff1a; #includeiostream using namespace std; class A { public:A(int a) :x(a) { cout A const…预备博客 C虚继承中构造函数和析构函数顺序问题以及原理 C派生类含有成员对象构造函数析构函数顺序 C虚基类成员可见性 程序一如下 #includeiostream using namespace std; class A { public:A(int a) :x(a) { cout A constructor... x endl; }int f() { return x; }~A() { cout destructor A... endl; } private:int x; }; class B :public virtual A { private:int y;A Aobj; public:B(int a, int b, int c) :A(a), y(c), Aobj(c) { cout B constructor... y endl; }int f() {A::f();Aobj.f();return y;}void display() { cout A::f() \t Aobj.f() \t f() endl; }~B() { cout destructor B... endl; } }; class C :public B { public:C(int a, int b, int c) :B(a, b, c), A(0) { cout C constructor... endl; } }; class D :public C, public virtual A { public:D(int a, int b, int c) :C(a, b, c), A(c) { cout D constructor... endl; }~D() { cout destructor D.... endl; } }; int main() {D d(7, 8, 9);d.f();d.display();return 0; }同时还要注意调用函数的时候顺序为从右往左。 解析首先我们调用D的构造函数发现D虚继承了A,直接继承了C间接继承了BB中含有成员对象Aobj因此构造函数的调用顺序为 A(9)【首先调用虚基类的构造函数输出A constructor...9】 A(9)【接下来调用B的构造函数因为B含有成员对象Aobj所以先调用Aobj的构造函数输出A constructor...9】 B(7,8,9)【运行B的构造函数输出B constructor...9】 C(7,8,9)【运行C的构造函数输出C constructor...】 D(7,8,9)【运行D的构造函数输出D constructor...】 d.f()【因为d中没有f方法因此我们在其基类中找发现其间接基类B和虚基类A中含有方法f,但是B中的方法优先级更高因此访问的是B中的方法B中的方法f会调用A中的方法fA::x10,然后调用Aobj.f()则Aobj.x10,然后y10】 d.dispaly()【运行B的方法因为输出的时候是从右往左输出的所以先调用B中的方法f此时A::x11Aobj.x11y11同时函数返回11然后再调用Aobj.f()返回12再调用A::f()返回12输出12 12 11】 ~D()【开始析构调用顺序和调用构造函数的顺序相反先是D然后再调用C的调用B的调用Aobj的调用A的,输出destructor D....】 ~C()【没有输出】 ~B()【输出destructor B...】 ~A()【输出destructor A...】 ~A()【输出destructor A...】 运行结果 程序二如下 #include iostream using namespace std; class Base1 { public:Base1(){cout class Base1! endl;} }; class Base2 { public:Base2(){cout class Base2! endl;} }; class Level1 :public Base2, virtual public Base1 { public:Level1(){cout class Level1! endl;} }; class Level2 : public Base2, virtual public Base1 { public:Level2(){cout class Level2! endl;} }; class TopLevel :public Level1, virtual public Level2 { public:TopLevel(){cout class TopLevel! endl;} }; int main() {TopLevel obj;return 0; }解析理解这个程序需要对含有虚基类的构造顺序有比较深刻的认识。 类TopLevel直接继承了Level1虚继承了类Level2,然后这两个类又直接继承了类Base2虚继承了类Base1因此最后类TopLevel虚继承了类Base1和类Level2。 由虚基类首先进行构造可知我们首先运行的是类Base1的构造函数 【输出class Base1!】 然后运行类Level2的构造函数发现虚基类Base1已经构造则构造直接继承的类Base2 【输出class Base2!】 【输出class Level2!】 再依次运行非虚基类即类Level1的构造函数 【输出class Base2!】 【输出class Level1!】 最后运行TopLevel的构造函数 【输出class TopLevel!】 运行结果
http://www.huolong8.cn/news/303099/

相关文章:

  • 华为云上面可以代做网站吗wordpress divi 教程
  • 多伦多网站建设多少钱超级采购小程序怎么注册
  • 上海网站建设在哪湖南人文科技学院官网首页
  • 云南省建设执业资格注册管理中心网站铜川做网站电话
  • 专门做家教的网站360建筑网怎么注册
  • 网站设计有限公司浦西网站建设
  • 部队网站制作北京网页制作设计
  • 郑州专业手机网站制作品牌推广部
  • 公司网站运营注意事项怎么判断网站的好坏
  • 网站建设168新型网络营销推广方式
  • 网站主题 模板网站域名在哪里查询
  • 合肥网站广州市白云区最新消息
  • 福州网站制作维护做网站要切图吗
  • 代理分佣后台网站开发上海软件公司有哪些
  • 网站icon怎么做的wordpress 慢 google
  • 高端医疗网站模板免费下载用dedecms做两个一样的网站
  • MAKA网站做H5怎么压缩图片网站站开发 流量
  • 郑州网站建设铁哥们大型新型网站
  • 微网站建设哪家优惠wordpress 模板选择
  • WordPress网站404公益页面青岛房产网签备案查询
  • 网上做室内设计好的网站长沙棋牌软件开发公司
  • 网站做支付接口天津星创网站建设有限公司
  • 网站制作 深圳移动端seo关键词优化
  • 山西公司怎么做网站做网站可以用微软雅黑字体么
  • 什么网站上做奥数题灯哥解析 wordpress
  • 建立网站数据库实验报告怎么运行自己做的网站
  • 红安城市建设局投诉网站安顺市哪里可以做网站
  • 网站教程设计12380举报网站制度建设
  • 设计师都上什么网站深圳市汇成品牌营销策划有限公司
  • 国外虚拟主机 两个网站怎样制定一个网站建设方案