创建一个employee类,该类中有字符数组,表示姓名、街道地址、市、省和邮政编码。把表示构造函数、changename()、display()的函数原型放在类定义中,构造函数初始化每个成员,disp
时间: 2023-06-01 19:02:20 浏览: 358
### 回答1:
题目要求创建一个employee类,该类中有字符数组,表示姓名、街道地址、市、省和邮政编码。通过构造函数、changename() 和 display() 的函数原型创建成员函数。这些成员函数的原型放在类定义中,构造函数将数组初始化为空字符串,而changename() 和 display() 函数将自行定义。每个成员的构造函数都应初始化。display() 函数将显示姓名和地址。
### 回答2:
员函数显示员工的信息,changename()函数允许更改员工姓名。
首先,我们需要明确该类的设计目的和属性。该类的主要目的是为了保存员工的信息,包括姓名、地址、邮编等。因此,我们可以设计以下属性:
1. char name[50]; // 姓名
2. char street[100]; // 街道地址
3. char city[50]; // 市
4. char state[50]; // 省
5. char zipcode[10]; // 邮政编码
接下来,我们需要定义构造函数、changename()和display()函数。
构造函数可以按如下方式定义:
```
class Employee {
public:
Employee(char n[], char st[], char c[], char s[], char z[]);
void display();
void changeName(char n[]);
private:
char name[50];
char street[100];
char city[50];
char state[50];
char zipcode[10];
};
Employee::Employee(char n[], char st[], char c[], char s[], char z[]) {
strcpy(name, n);
strcpy(street, st);
strcpy(city, c);
strcpy(state, s);
strcpy(zipcode, z);
}
```
这个构造函数采用传递的参数来初始化每个成员。显示函数可以按如下方式定义:
```
void Employee::display() {
cout<< "Name: " << name << endl;
cout<< "Address: " << street << endl;
cout<< "City: " << city << endl;
cout<< "State: " << state << endl;
cout<< "Zipcode: " << zipcode << endl;
}
```
这个函数用于显示员工的信息,可以打印成员变量。最后,我们需要定义函数changeName(),它可以按如下方式定义:
```
void Employee::changeName(char n[]) {
strcpy(name, n);
}
```
这个函数用于更改员工的姓名,采用传递的参数作为新的姓名。现在我们已经定义了一个完整的 Employee 类,可以使用以下代码来测试:
```
int main() {
Employee emp("Bob Smith", "123 Main Street", "Los Angeles", "CA", "90001");
emp.display();
emp.changeName("Alice Johnson");
emp.display();
return 0;
}
```
### 回答3:
Employee类是一种特殊的数据类型,它封装了一组属性,包括姓名、街道地址、市、省和邮政编码。通过创建一个Employee对象,我们可以方便地管理这些属性。
在Employee类中,我们需要定义一个字符数组,用于存储员工的姓名、街道地址、市、省和邮政编码。通过在构造函数中初始化这些成员变量,我们可以方便地创建Employee对象。
除了构造函数之外,我们还需要定义changename()和display()两个函数。changename()函数可以用于修改员工的姓名,display()函数则可以将员工的属性值打印到控制台上。
在实现Employee类时,我们需要考虑如何避免访问非法的地址或者数据。因此,我们可以使用private关键字来保护成员变量,从而使它们只能在类内部访问。
以下是一个示例代码:
```cpp
class Employee{
private:
char name[50];
char street[100];
char city[50];
char state[20];
char zip[10];
public:
Employee(char* n, char* s, char* c, char* st, char* z){
strcpy(name, n);
strcpy(street, s);
strcpy(city, c);
strcpy(state, st);
strcpy(zip, z);
}
void changename(char* n){
strcpy(name, n);
}
void display(){
cout << "Name: " << name << endl;
cout << "Address: " << street << ", " << city << ", " << state << " " << zip << endl;
}
};
```
在这个示例中,我们首先定义了一个Employee类,并在private部分定义了员工的姓名、街道地址、市、省和邮政编码五个成员变量。
接下来我们定义了一个构造函数,并在构造函数中使用strcpy()函数将传递进来的值分别赋值给实例变量。我们还定义了一个changename()函数,用于修改员工的姓名。
最后,我们定义了一个display()函数,用于将员工的属性值打印到控制台上。
使用这个Employee类,我们可以方便地创建和管理员工的信息,例如:
```cpp
Employee emp("张三","XXX街道","上海","上海","200000");
emp.display(); // 打印员工信息
emp.changename("李四"); // 修改员工姓名
emp.display(); // 打印修改后的信息
```
以上就是创建一个Employee类的简单示例。除了以上定义的属性,我们还可以添加其他方法和属性来扩展这个类,以适应不同的需求。
阅读全文