21xrx.com
2024-05-20 09:06:25 Monday
登录
文章检索 我的文章 写文章
C++类的构造函数
2023-07-13 17:38:10 深夜i     --     --
C++ 构造函数 对象初始化 默认构造函数

C++中类的构造函数是一种特殊的成员函数,它在创建类实例时被自动调用,用于初始化对象的成员变量。构造函数的名称必须与类的名称相同,没有返回类型和参数列表时必须用空括号来表示。

构造函数可以包含各种类型的语句,例如变量的初始化、申请内存空间等。如果没有定义构造函数,编译器将自动提供一个默认构造函数,其什么也不做。

例如,下面是一个简单的构造函数实现:


class Person {

public:

  Person()

    age = 0;

    name = "Unknown";

 

  Person(int n, string s)

    age = n;

    name = s;

 

  void display()

    cout << "Name: " << name << endl;

    cout << "Age: " << age << endl;

 

private:

  int age;

  string name;

};

这个例子中,定义了两个构造函数,一个是默认构造函数,另一个是带参数的构造函数,用于初始化成员变量age和name。其中,第一个构造函数将age初始化为0,将name初始化为“Unknown”字符串;第二个构造函数需要传入两个参数,n和s,分别用于初始化age和name。

我们可以通过下面的示例来测试这个Person类的构造函数:


int main() {

  Person A;

  A.display();

  Person B(25, "Tom");

  B.display();

  return 0;

}

输出结果如下:


Name: Unknown

Age: 0

Name: Tom

Age: 25

可以看到,在创建Person类的实例时,使用了不同的构造函数,从而成功地初始化了对象的成员变量。

总之,构造函数在很多情况下都是必需的,特别是在类中包含大量成员变量的情况下。通过构造函数,我们可以有效地初始化对象的成员变量,确保其在使用时正确无误。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复