C++编写程序定义一个Person类

编写程序:
(1)定义一个Person类,其中,成员函数:构造函数,纯虚函数work,数据成员:名字m_strName。
(2)Worker类,成员函数:构造函数,work,数据成员:年龄m_iAge。
(3) Dustman 类,成员函数:构造函数,work。

基于Monster 组和GPT的调写:

#include <iostream>
using namespace std;

class Person {
protected:
    string m_strName;

public:
    Person(const string& name) : m_strName(name) {}
    virtual void work() = 0;
};

class Worker : public Person {
protected:
    int m_iAge;

public:
    Worker(const string& name, int age) : Person(name), m_iAge(age) {}
    void work() override {
        cout << "Worker " << m_strName << " is working." << endl;
    }
};

class Dustman : public Worker {
public:
    Dustman(const string& name, int age) : Worker(name, age) {}
    void work() override {
        cout << "Dustman " << m_strName << " is cleaning." << endl;
    }
};

int main() {
    Person* person = new Dustman("John", 30);
    person->work();
    delete person;

    return 0;
}