赞
踩
之前我们了解到c++类当中有多个默认成员函数,其中构造函数跟析构函数是会在类实例化对象时自动调用,构造函数会对类成员变量进行初始化,析构函数会对对象的内存空间进行释放,防止出现内存泄漏等问题。
既然我们知道了构造函数是来对成员变量进行初始化的,我们就来看一下具体的初始化过程以及需要注意的地方。
我们先来重新认识一下构造函数以及它的特点
构造函数它的主要作用就是对数据成员进行初始化,一般采用初始化列表的形式进行初始化。
基本格式:
构造函数名(参数列表…):变量名1(初始化值),变量名2(初始化值)
{
函数体
}
注意:
为了加深印象看一下下面的这道题:
可以思考一下上面这个程序最终会输出什么内容?
最终会发现这个程序结果中a的值是一个随机值,程序并没有按照初始化列表当中那样,先初始化变量b然后用变量b的值去初始化a,而是先对a进行初始化,然后再对b进行初始化,也就是说正真的初始化顺序时按照类当中变量声明的顺序进行的,与初始化列表无关。
注意:当类当中有引用和const修饰的变量时一定要进行初始化,否则会报出。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。