C++中构造函数是特殊的成员函数,只要定义类的新对象就会执行构造函数,构造函数是保证每个对象的数据成员具有合适的初始值。
构造函数特点:
1)构造函数与类同名,不能指定返回类型,且不能声明为const函数,详见你所不知道的 const
2)构造函数可以重载,所以可以有多个构造函数
sales_item(void) /*const*/;
sales_item(istream &is /*= cin */);
sales_item(const string & book ); //must const
sales_item(const sales_item &org);
3)调用构造函数,使用不同的实参就会调用不同的构造函数,如下
sales_item sales0;
sales_item sales1("hello world");
sales_item("hello world"); //也可以
sales_item sales2 = sales_item("123456"); //定义
sales_item sales3(cin);
构造函数的初始化式:
函数后面可以包含一个初始化列表,原型为形参后紧跟一个冒号,然后就是以逗号分开的数据成员列表&