zoukankan      html  css  js  c++  java
  • c++类 用冒号初始化对象(成员初始化列表)

    c++类 用冒号初始化对象(成员初始化列表) 成员初始化的顺序不同于它们在构造函数初始化列表中的顺序,而与它们在类定义中的顺序相同

    #include<iostream>
    int n=0;
    using namespace std;
     class Cbox{
             int a ;
             int b ;
             int c ;
         public:
             int g ;
         Cbox():a(n++),c(n++),b(n++){}
        ~Cbox(){cout<<a<<" "<<b<<" "<<c<<endl;}
     };
     
     int main(){Cbox a ;
     Cbox b(a);//跟   Cbox b=a;   结果一样 
     }

    (1)在创建派生类对象时,先调用基类的构造函数,然后调用派生类的构造函数;撤销对象时,析构函数被调用的顺序则相反。

    (2)若派生类中包含对象成员,则派生类的构造函数初始化成员列表中既要列出基类的构造函数也要列出对象的构造函数。派生类定义对象时,先调用基类的构造函数,再调用对象的构造函数,最后调用派生类的构造函数。
    ---------------------
    作者:libaineu2004
    来源:CSDN
    原文:https://blog.csdn.net/libaineu2004/article/details/19565229
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    Antd下拉多选带勾选框
    POJ
    HDU 4281(01 背包+ 多旅行商问题)
    Codeforces Round #460 (Div. 2) D. Substring
    HDU
    POJ 2184 Cow Exhibition
    Codechef FRBSUM 解题报告
    UVA11982题解
    Suffix Array 后缀数组算法心得
    51nod1158 单调栈 个人的想法以及分析
  • 原文地址:https://www.cnblogs.com/l2017/p/6901550.html
Copyright © 2011-2022 走看看