C++结构体可以定义多个构造函数,每个构造函数可以有不同的参数列表和实现方式。以下是一个例子:

#include <iostream>
using namespace std;

struct Person{
    string name;
    int age;

    Person(){
        name = "";
        age = 0;
    }

    Person(string n, int a){
        name = n;
        age = a;
    }

    void print(){
        cout << "Name: " << name << ", Age: " << age << endl;
    }
};

int main(){
    Person p1;
    p1.print();

    Person p2("Tom", 20);
    p2.print();

    return 0;
}

上述例子中,结构体Person定义了两个构造函数:一个无参构造函数和一个有参构造函数。无参构造函数初始化name和age成员变量为默认值,而有参构造函数则根据传入的参数来初始化。在main函数中,我们分别使用这两个构造函数来创建了两个Person对象,并通过print方法输出了它们的信息。

需要注意的是,如果一个结构体定义了有参构造函数,但没有定义无参构造函数,那么就不能使用无参构造函数来创建该结构体的对象。

C++结构体定义多个构造函数

原文地址: https://www.cveoy.top/t/topic/bygJ 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录