导航
×
   ❮   
HTML CSS JavaScript PHP Python C C++ Go Sass W3C Colors TypeScript ECMS

C++ 教程

C++ 简介 C++ 下载安装和环境配置 C++ 快速入门 C++ 语法 C++ 输出 C++ 注释 C++ 变量 C++ 用户输入 C++ 数据类型 C++ 运算符 C++ 字符串 C++ 数学运算 C++ 布尔值 C++ 条件语句 C++ Switch 语句 C++ While 循环 C++ For 循环 C++ Break/Continue 语句 C++ 数组 C++ 结构体 C++ 枚举 C++ 引用 C++ 指针 C++ 内存管理

C++ 函数

C++ 函数 C++ 函数参数 C++ 函数重载 C++ 作用域 C++ 递归 C++ Lambda 表达式

C++ 面向对象

C++ OOP C++ 类和对象 C++ 类方法 C++ 构造函数 C++ 访问修饰符 C++ 封装 C++友元函数 C++ 继承 C++ 多态

C++ 错误


C++ 构造函数重载


构造函数重载

在 C++ 中,同一个类可以有多个构造函数。这称为构造函数重载。

每个构造函数必须具有不同数量或类型的参数,这样编译器才能在创建对象时知道使用哪个构造函数。


为什么要使用构造函数重载?

  • 为了在创建对象时提供更大的灵活性
  • 为了设置默认值或自定义值
  • 为了减少重复代码

包含两个构造函数的示例

此类有两个构造函数:一个不带参数,一个带参数:

class Car {
  public:
    string brand;
    string model;

    Car() {
      brand = "Unknown";
      model = "Unknown";
    }

    Car(string b, string m) {
      brand = b;
      model = m;
    }
};

int main() {
  Car car1;
  Car car2("BMW", "X5");
  Car car3("Ford", "Mustang");

  cout << "Car1: " << car1.brand << " " << car1.model << "";
  cout << "Car2: " << car2.brand << " " << car2.model << "";
  cout << "Car3: " << car3.brand << " " << car3.model;
  return 0;
}

结果:

Car1: Unknown Unknown
Car2: BMW X5
Car3: Ford Mustang
亲自试一试 »

构造函数重载允许你创建具有自定义值的对象。


Copyright ©2026 蒙ICP备2026009383号 All Rights Reserved 提供的内容仅用于学习和测试,不保证内容的正确性。