📅  最后修改于: 2023-12-03 14:59:36.775000             🧑  作者: Mango
在 C++ 中,构造函数是一种特殊的成员函数,用于创建和初始化对象。问题7旨在测试对于带有默认参数的构造函数的理解。
给定一个名为 Person
的类,该类具有以下成员变量和构造函数:
// Person 类的声明
class Person {
private:
std::string name;
int age;
std::string address;
public:
// 构造函数(带有默认参数)
Person(std::string personName = "Unknown", int personAge = 0, std::string personAddress = "Unknown");
};
请完成 Person
类的构造函数的定义,使其能够按照给定的参数进行初始化,并具有默认参数。构造函数应初始化 name
、age
和 address
成员变量。
请在下面的代码块中,完成 Person
类的构造函数的定义:
// 构造函数的实现
Person::Person(std::string personName, int personAge, std::string personAddress) {
// 在这里编写构造函数的代码
// 使用传入的参数对成员变量进行初始化
}
下面是 Person
类的一个示例用法:
// 创建一个名为 person 的 Person 对象
Person person("John", 30, "123 Example Street");
// 打印 person 的信息
std::cout << "Name: " << person.getName() << std::endl;
std::cout << "Age: " << person.getAge() << std::endl;
std::cout << "Address: " << person.getAddress() << std::endl;
上述代码的输出应为:
Name: John
Age: 30
Address: 123 Example Street
在上述代码示例中,我们首先创建了一个 Person
对象,通过传递参数 "John"
、30
和 "123 Example Street"
来调用构造函数。
构造函数将传入的参数分别赋值给成员变量 name
、age
和 address
。
最后,我们使用 getName()
、getAge()
和 getAddress()
成员函数来获取并打印对象的属性。
如果我们没有传递参数给构造函数,则构造函数将使用默认参数 "Unknown"
和 0
来初始化对象的成员变量。