在C++中,类的构造函数用于创建对象时执行必要的初始化操作。构造函数的名称与类名相同,没有返回类型,并且可以有参数。

以下是一个示例代码,演示了一个简单类的构造函数定义:

#include <iostream>

class Person {
public:
  // 默认构造函数
  Person() {
    std::cout << "调用默认构造函数" << std::endl;
  }

  // 带参数的构造函数
  Person(const std::string& name, int age) {
    this->name = name;
    this->age = age;
    std::cout << "调用带参数的构造函数" << std::endl;
  }

private:
  std::string name;
  int age;
};

int main() {
  // 创建对象并调用默认构造函数
  Person person1; // 注意: 这里不能使用()空括号, 可以使用{}

  // 创建对象并调用带参数的构造函数
  Person person2("Alice", 25);

  return 0;
}

在上述示例中,类Person具有两个构造函数:默认构造函数和带参数的构造函数。

可视为构造函数的多态

默认构造函数没有参数,当创建对象没有传参则时会自动调用该构造函数进行初始化。
若创建时传入了stringage参数, 则调用带参数构造函数, 默认构造函数不会被调用.


Totn
10 声望5 粉丝

幼稚也没关系,去实践,去经历,去思考!