构造函数是C ++类中成员函数的一种特殊类型,在创建对象时会自动调用该成员函数。这是特殊的,因为它的名称与类名相同。
构造函数用于:
初始化类的数据成员:在构造函数成员函数(它将由程序员声明)中,我们可以初始化数据成员的默认值,并将它们进一步用于处理。
为数据成员分配内存:构造函数还可用于声明运行时内存(数据成员的动态内存)。
构造函数具有以下属性:
构造函数的名称与类名称相同。区分大小写。
构造函数没有返回类型。
我们可以重载构造函数,这意味着我们可以创建多个类的构造函数。
我们可以在构造函数中使用默认参数。
它必须是公共类型。
示例
#include <iostream> using namespace std; class Sample { private: int X; public: //默认构造函数 Sample() { //数据成员初始化 X=5; } void set(int a) { X = a; } void print() { cout<<"Value of X : "<<X<<endl; } }; int main(){ //创建对象时调用构造函数 Sample S; S.print(); //设置新值 S.set(10); S.print(); return 0; }
输出结果
Value of X : 5 Value of X : 10
通常,构造函数是以下类型:
默认构造函数或零参数构造函数
参数化构造函数
复制构造函数
转换构造函数
显式构造函数
注意:
如果我们不在用户定义类中创建构造函数。然后,编译器自动在编译的代码中插入带有空主体的构造函数。