#3820. [GESP202509 六级 C++] 第 2 题

[GESP202509 六级 C++] 第 2 题

假设变量 veh 是类 Car 的一个实例,我们可以调用 veh.move(),是因为面向对象编程有( )性质。

class Vehicle {
private:
    string brand;

public:
    Vehicle(string b) : brand(b) {}

    void setBrand(const string& b) { brand = b; }
    string getBrand() const { return brand; }

    void move() const {
        cout << brand << " is moving..." << endl;
    }
};

class Car : public Vehicle {
private:
    int seatCount;

public:
    Car(string b, int seats) : Vehicle(b), seatCount(seats) {}

    void showInfo() const {
        cout << "This car is a " << getBrand()
             << " with " << seatCount << " seats." << endl;
    }
};

{{ select(1) }}

  • 继承(Inheritance
  • 封装(Encapsulation
  • 多态(Polymorphism
  • 链接(Linking