C++的结构体怎么写构造函数
时间: 2023-10-01 12:07:31 浏览: 102
在C++中,结构体也可以拥有构造函数。结构体的构造函数的语法与类的构造函数相似。以下是一个示例结构体及其构造函数:
```c++
#include <iostream>
using namespace std;
struct Person {
string name;
int age;
// 构造函数
Person() {
name = "Unknown";
age = 0;
}
Person(string n, int a) {
name = n;
age = a;
}
void display() {
cout << "Name: " << name << endl;
cout << "Age: " << age << endl;
}
};
int main() {
Person p1; // 调用默认构造函数
p1.display();
Person p2("Alice", 25); // 调用带参数的构造函数
p2.display();
return 0;
}
```
在上面的示例中,我们定义了一个名为Person的结构体,并为其定义了两个构造函数:一个默认构造函数和一个带参数的构造函数。默认构造函数将name设置为"Unknown",将age设置为0;而带参数的构造函数则接受两个参数n和a,并使用这些参数来初始化name和age成员。
在main函数中,我们创建了两个Person对象p1和p2,并分别调用了默认构造函数和带参数的构造函数。最后,我们调用了每个对象的display函数来显示其属性。
阅读全文