设计person类,包括私有数据成员:姓名;设计student类继承person类,新增私有数据成员:班级;设计类worker继承person类,新增私有数据成员:职业;设计类studentworker继承student类和worker类,新增私有数据成员:工资;在主函数中定义一个studentworker类的对象,调用该对象的show函数输出该对象的信息。
时间: 2024-02-21 16:59:24 浏览: 57
以下是使用C++编写的代码实现:
```cpp
#include <iostream>
#include <string>
using namespace std;
class Person {
private:
string name;
public:
Person(string n) : name(n) {}
void setName(string n) { name = n; }
string getName() const { return name; }
};
class Student : public Person {
private:
string className;
public:
Student(string n, string c) : Person(n), className(c) {}
void setClassName(string c) { className = c; }
string getClassName() const { return className; }
};
class Worker : public Person {
private:
string job;
public:
Worker(string n, string j) : Person(n), job(j) {}
void setJob(string j) { job = j; }
string getJob() const { return job; }
};
class StudentWorker : public Student, public Worker {
private:
double salary;
public:
StudentWorker(string n, string c, string j, double s) : Student(n, c), Worker(n, j), salary(s) {}
void setSalary(double s) { salary = s; }
double getSalary() const { return salary; }
void show() const {
cout << "Name: " << getName() << endl;
cout << "Class: " << getClassName() << endl;
cout << "Job: " << getJob() << endl;
cout << "Salary: " << salary << endl;
}
};
int main() {
StudentWorker sw("Tom", "ClassA", "Engineer", 5000.0);
sw.show();
return 0;
}
```
在主函数中创建了一个名为sw的StudentWorker对象,其构造函数分别传入了姓名、班级、职业和工资信息。调用了sw对象的show函数输出了该对象的信息。输出结果如下:
```
Name: Tom
Class: ClassA
Job: Engineer
Salary: 5000
```
阅读全文