C++中Instance的多态使用技巧

avatar
作者
筋斗云
阅读量:0

在C++中,可以通过指针或引用来实现多态,实现多态的前提是父类至少要有一个虚函数。下面是一个简单的例子来说明Instance的多态使用技巧:

#include <iostream>  class Animal { public:     virtual void makeSound() {         std::cout << "Animal makes a sound" << std::endl;     } };  class Dog : public Animal { public:     void makeSound() override {         std::cout << "Dog barks" << std::endl;     } };  class Cat : public Animal { public:     void makeSound() override {         std::cout << "Cat meows" << std::endl;     } };  int main() {     Animal* animal1 = new Dog();     Animal* animal2 = new Cat();      animal1->makeSound();     animal2->makeSound();      delete animal1;     delete animal2;      return 0; } 

在上面的例子中,我们定义了一个Animal类,并且派生了DogCat类,它们都重写了makeSound方法。在main函数中,我们创建了两个Animal类的实例,分别指向DogCat对象,然后通过指针调用makeSound方法,实现了多态。

通过多态,我们可以在运行时确定调用的方法是父类的方法还是子类的方法,从而实现动态绑定。这种机制可以增加代码的灵活性和可扩展性。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!