设计一个员工类CEmployee,其结构如下私有数据成员No (工号),Name (姓名),Age (年龄),Salary (薪资); 重载构造函数,实现对类实例对象的带参数初始化和无参数初始化; 公有成员函数SetData ();实现键盘随机输入对数据成员赋值; 公有成员函数Display();实现屏幕输出对数据成员; 在main0中定义对象,给出成员函数调用实例。
时间: 2024-03-14 14:43:47 浏览: 67
好的,下面是CEmployee类的设计:
```cpp
#include <iostream>
#include <string>
class CEmployee {
public:
// 重载构造函数
CEmployee() {}
CEmployee(int no, const std::string& name, int age, double salary)
: m_no(no), m_name(name), m_age(age), m_salary(salary) {}
// 公有成员函数
void SetData();
void Display();
private:
int m_no; // 工号
std::string m_name; // 姓名
int m_age; // 年龄
double m_salary; // 薪资
};
void CEmployee::SetData() {
std::cout << "请输入工号:";
std::cin >> m_no;
std::cout << "请输入姓名:";
std::cin >> m_name;
std::cout << "请输入年龄:";
std::cin >> m_age;
std::cout << "请输入薪资:";
std::cin >> m_salary;
}
void CEmployee::Display() {
std::cout << "工号:" << m_no << std::endl;
std::cout << "姓名:" << m_name << std::endl;
std::cout << "年龄:" << m_age << std::endl;
std::cout << "薪资:" << m_salary << std::endl;
}
int main() {
// 定义对象
CEmployee emp1(1, "Tom", 25, 5000);
CEmployee emp2;
// 调用成员函数
emp1.Display();
std::cout << "请输入员工信息:" << std::endl;
emp2.SetData();
std::cout << "员工信息如下:" << std::endl;
emp2.Display();
return 0;
}
```
CEmployee类包含四个私有数据成员:工号、姓名、年龄和薪资。其中,工号、姓名和年龄是整型,薪资是双精度型。CEmployee类还重载了构造函数,实现了带参数初始化和无参数初始化;公有成员函数SetData()实现键盘输入数据成员的赋值;公有成员函数Display()实现屏幕输出数据成员。
在main函数中,定义了两个CEmployee对象emp1和emp2,并通过成员函数Display()输出了emp1的信息。然后,通过成员函数SetData()从键盘输入了emp2的信息,并通过成员函数Display()输出了emp2的信息。
希望这个设计能够满足你的需求,有任何问题欢迎继续提问。
阅读全文