C ++中的构造函数及其类型是什么?

构造函数是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

C ++中的构造函数类型

通常,构造函数是以下类型:

  1. 默认构造函数或零参数构造函数

  2. 参数化构造函数

  3. 复制构造函数

  4. 转换构造函数

  5. 显式构造函数

注意:
如果我们不在用户定义类中创建构造函数。然后,编译器自动在编译的代码中插入带有空主体的构造函数。