您的位置:首页 > 编程语言 > C语言/C++

初始化列表和构造函数

2015-07-22 01:55 363 查看
const的数据成员和需要用初始化列表,不能用普通的构造函数体内部进行初始化,这称为常数据成员。

const  有常引用,常对象,常数据成员,常成员函数

栈区:内存由系统来分配和释放

堆区:内存由程序员自己来分配和释放的

全局区

常量区

代码区:方法

构造函数与类同名

构造函数没有返回值

构造函数可以进行重载

当用户没有定义构造函数时,编译器自动生成一个构造函数

初始化列表先于构造函数执行,,初始化列表只能用于构造函数

初始化列表可以同时初始化多个数据成员

推荐使用初始化列表。

初始化列表和构造函数的区别

什么是默认构造函数?

就是无参的构造函数

.h文件

Teacher(string name = "james",int age = 1);/只在声明的时候写默认值


而在定义构造函数时候不用写默认值即:

.cpp文件

Teacher::Teacher(string name, int age){

    

    m_strName = name;

    m_iAge = age;

}


初始化列表

Teacher::Teacher(string name,int age):m_strName(name),m_iAge(age)

{

    

    //null

}

main函数调用

Teacher t1;

Teacher t2("Merry",13);

const的数据成员需要用初始化列表,不能用普通的构造函数体内部进行初始化。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  C++