C/C++学习笔记C++

4.0 C++远征:构造函数初始化列表

2016-11-18  本文已影响15人  青_阳

构造函数初始化列表

1.默认构造函数

在实例化对象时不用传参的函数,叫做默认构造函数。

2.初始化列表

代码示范:

class Student{
    public:
        Student():m_strName("Jim"), m_iAge(10){}
    private:
        string m_strName;
        int m_iAge;
};

​ 只能用小括号赋值。

特性:

​ (1)初始化列表先于构造函数执行;

​ (2)初始化列表只能用于构造函数;

​ (3)初始化列表可以同时初始化多个数据成员。

3.初始化列表存在的必要性

举例:

class Circle{
    public:
        Circle(){
          m_dPi = 3.14; // 错误,不能给const类型用=赋值
        }
    private:
        const double m_dPi;
};

只能通过初始化列表来实现:

class Circle{
    public:
        Circle():m_dPi(3.14);
    private:
        const double m_dPi;
};
上一篇 下一篇

猜你喜欢

热点阅读