|你想知道的C ++中的构造函数,这里都有


|你想知道的C ++中的构造函数,这里都有
文章图片
|你想知道的C ++中的构造函数,这里都有
文章图片
|你想知道的C ++中的构造函数,这里都有
文章图片
什么是构造函数?
构造函数是类的成员函数 , 用于初始化类的对象 。 在C ++中 , 创建对象(类的实例)时会自动调用Constructor 。 它是该类的特殊成员函数 。


构造函数与普通函数有何不同?
构造函数与普通函数在以下方面有所不同:
1.构造函数与类本身具有相同的名称
2.构造函数没有返回类型
3.创建对象时会自动调用构造函数 。
4.如果不指定构造函数 , 则C ++编译器会为我们生成一个默认构造函数(不带参数 , 并且具有空主体) 。

构造函数的类型:
1.默认构造函数:默认构造函数是不带任何参数的构造函数 。 它没有参数 。

注意:即使我们没有显式定义任何构造函数 , 编译器也会自动隐式提供默认的构造函数 。
2.参数化构造函数:可以将参数传递给构造函数 。 通常 , 这些参数有助于在创建对象时初始化对象 。 要创建参数化的构造函数 , 只需像向其他函数一样向其添加参数即可 。 定义构造函数的主体时 , 请使用参数初始化对象 。

在参数化构造函数中声明对象时 , 必须将初始值作为参数传递给构造函数 。 对象声明的常规方法可能不起作用 。 可以显式或隐式调用构造函数 。
参数化构造函数的用途:
1.创建对象时 , 使用它来初始化具有不同值的不同对象的各种数据元素 。
2.它用于重载构造函数 。
一个类中可以有多个构造函数吗?
是的 , 它被称为构造函数重载 。

3.复制构造函数:复制构造函数是一个成员函数 , 它使用同一类的另一个对象初始化一个对象 。
每当我们为一个类定义一个或多个非默认构造函数(带参数)时 , 也应显式定义一个默认构造函数(不带参数) , 因为在这种情况下编译器将不提供默认构造函数 。 但是 , 没有必要 , 始终定义默认构造函数被认为是最佳实践 。
【|你想知道的C ++中的构造函数,这里都有】