c++

c++ class类多态怎么运用

小樊
82
2024-09-24 23:37:14
栏目: 编程语言

在C++中,多态是指允许使用基类指针或引用来操作派生类对象。通过虚函数(virtual function)实现多态。下面是一个简单的例子来说明如何在C++类中使用多态:

  1. 首先,定义一个基类(base class):
#include <iostream>
using namespace std;

class Animal {
public:
    virtual void makeSound() {
        cout << "The animal makes a sound" << endl;
    }
};
  1. 然后,定义一个派生类(derived class),继承自基类:
class Dog : public Animal {
public:
    void makeSound() override {
        cout << "The dog barks" << endl;
    }
};
  1. 最后,在主函数(main function)中,使用基类指针指向派生类对象,并调用虚函数:
int main() {
    Animal* animal = new Dog(); // 创建一个Dog对象,并用Animal类型的指针指向它
    animal->makeSound(); // 调用makeSound()函数,输出结果为 "The dog barks"

    delete animal; // 释放内存
    return 0;
}

在这个例子中,我们使用基类Animal的指针指向了一个派生类Dog的对象。当我们调用animal->makeSound()时,实际上调用的是派生类Dog中的makeSound()函数,而不是基类Animal中的makeSound()函数。这就是多态的体现。

0
看了该问题的人还看了