一、构造函数定义和作用
定义:构造函数是一种特殊的成员函数,与其他函数不同,不需要用户调用它,而是创建对象的时候自动调用
作用:初始化对象的数据成员。
书写规范:1.构造函数必须与类的名字相同,并且不能有返回值
2.构造函数的参数表示的赋值给类成员的值,参数名不能与类成员相同,否则最终的代码会是shares = shares为了避 免这种混乱,一种常见的做法是在数据成员名中使用m_前缀,或者在数据成员名中使用_后缀。例如:m_company ,company_
二、构造函数的类型
1.默认构造函数
2.无参构造函数
3.一般构造函数(重载构造函数)
4.复制构造函数(拷贝构造函数)
复制构造函数参数为类对象本身的引用,用于根据一个已存在的对象复制出一个新的该类的对象,一般在函数中会将已存在对象的数据成员的值复制一份到新创建的对象中。
Complex(const Complex & c)
{
// 将对象c中的数据成员值复制过来
m_real = c.m_real;
m_imag = c.m_imag;
}
三、构造函数初始化对象的数据成员
Stock stock1("nano",12);
Stock stock1 = Stock("nano",12)
Stock *stock = new Stock("nano",12)
//支持c++11
Stock stock1 = {"nano",12)
Stock stock1{"nano",12}
Stock *stock1 = new Stock{"nano",12}