(C++)类的构造函数——显示、隐式的调用构造函数及默认构造函数的显示、隐式方式

对于类,我们知道数据部分的访问状态是私有的,这将意味着程序不能直接访问数据成员,程序只能通过成员函数来访问数据成员。所以我们要设计合适的成员函数才能成功地将对象初始化,如果使数据成员成为公有,而不是私有,这使数据成为公有的违背了类将数据隐藏的一个特性。

其中,类构造函数专门用于构造新对象、将值赋给它们的数据成员。

构造函数的原型和函数头有一个有趣的特性——虽然没有返回值,但没有被声明为void型,实际上,构造函数没有声明类型。

构造函数的方法:(举个例子)
原函数:
void Stock::acquire(const std::string & co, long n, double pr)
构造函数:
Stock::Stock (const std::string & co, long n, double pr)

使用类的名称,没有返回值,没有被声明为void类型。

其中注意:
类成员名称不能(不建议)用作构造函数的参数名。构造函数的参数表示的不是类成员,而是赋给类成员的值。所以参数名不能与类成员相同。

为类避免这种混乱,有两种方法。

你可能感兴趣的:(c++)