通八洲科技

C++如何定义和使用一个类(Class)?(构造函数示例)

日期:2025-12-29 00:00 / 作者:尼克
C++中类由class关键字定义,含私有数据成员和公有成员函数,构造函数名与类名相同、无返回类型,用成员初始化列表高效初始化;可重载、委托或设默认参数。

在C++中定义一个类,就是用 class 关键字声明一组相关数据(成员变量)和操作这些数据的函数(成员函数),其中构造函数用于初始化对象。

定义类的基本结构

类通常包含私有(private)数据成员和公有(public)成员函数。例如定义一个表示学生的类:

class Student {
  private:
    std::string name;
    int age;
  public:
    Student();              // 默认构造函数
    Student(std::string n, int a); // 带参构造函数
    void display() const;
};

实现构造函数

构造函数名必须与类名完全相同,没有返回类型(连 void 也不能写)。它在创建对象时自动调用:

Student::Student() : name("Unknown"), age(0) {}

Student::Student(std::string n, int a) : name(n), age(a) {}

创建和使用对象

定义类之后,就可以用它创建对象,并调用成员函数:

int main() {
  Student s1;                         // 调用默认构造函数
  Student s2("Alice", 20);         // 调用带参构造函数
  s2.display();
  return 0;
}

补充:默认参数与委托构造(C++11起)

可简化构造函数数量:

Student::Student(std::string n = "Unknown", int a = 0) : name(n), age(a) {}

或用委托构造避免重复代码:

Student::Student() : Student("Unknown", 0) {}
Student::Student(std::string n, int a) : name(n), age(a) {}