C++面向对象:初始化列表

初始化列表

初始化列表是指在构造函数中,我们可以提前给构造函数进行初始化。

传统的初始化:

Person(int a,int b,int c){
        m_a=a;
        m_b=b;
        m_c=c;
    }

初始化列表:

Person(int a,int b,int c) : m_a(a), m_b(b), m_c(c)
    {
    }

其实这两个的区别不是很大,但是平常如果出现了这样的代码要看得懂
我们也可以修改a,b,c的值。

总结

在构造函数名后面加上 :变量(值)就完成了初始化列表的操作

完整代码


#include <iostream>
using namespace std;

// 初始化列表
class Person
{
public:
    // 传统初始化
    // Person(int a,int b,int c){
    //     m_a=a;
    //     m_b=b;
    //     m_c=c;
    // }

    // 初始化列表
    //  注意冒号的位置。
    Person(int a,int b,int c) : m_a(a), m_b(b), m_c(c)
    {
    }
    int m_a;
    int m_b;
    int m_c;
};
void test01()
{
    Person p(10,20,30);
    cout << p.m_a << p.m_b << p.m_c << endl;
}
int main()
{
    test01();
    system("pause");
    return 0;
}

posted @ 2021-05-24 12:44  Zeker62  阅读(66)  评论(0编辑  收藏  举报