a) 定义一个包含名称、街道地址、城市和邮政编码等属性的“员工”类。这些字符串应定义为“字符串”而不是字符*。 b) 定义一个构造函数来初始化这些属性,定义一个析构函数来将属性设置为 “”。 c) 多个成员函数来更改这些属性中的任何一个,一个成员函数来显示员工的全部信息。
时间: 2024-05-16 08:17:48 浏览: 43
a) 以下是一个包含名称、街道地址、城市和邮政编码等属性的“员工”类:
```cpp
#include <string>
class Employee {
public:
std::string name;
std::string streetAddress;
std::string city;
std::string zipCode;
// 构造函数
Employee(std::string name, std::string streetAddress, std::string city, std::string zipCode)
{
this->name = name;
this->streetAddress = streetAddress;
this->city = city;
this->zipCode = zipCode;
}
// 析构函数
~Employee()
{
name = "";
streetAddress = "";
city = "";
zipCode = "";
}
// 成员函数来更改这些属性中的任何一个
void setName(std::string name)
{
this->name = name;
}
void setStreetAddress(std::string streetAddress)
{
this->streetAddress = streetAddress;
}
void setCity(std::string city)
{
this->city = city;
}
void setZipCode(std::string zipCode)
{
this->zipCode = zipCode;
}
// 成员函数来显示员工的全部信息
void displayInfo()
{
std::cout << "Name: " << name << std::endl;
std::cout << "Street Address: " << streetAddress << std::endl;
std::cout << "City: " << city << std::endl;
std::cout << "Zip Code: " << zipCode << std::endl;
}
};
```
b) 构造函数和析构函数已在上述代码中实现。
c) 成员函数已在上述代码中实现。例如,如果要更改员工的名称,可以使用以下代码:
```cpp
Employee e("John Smith", "123 Main St", "Anytown", "12345"); // 创建一个新的员工对象
e.setName("Jane Doe"); // 更改名称
e.displayInfo(); // 显示全部信息
```
阅读全文