在 c++++ 中,通过继承实现多态性,允许对象具有不同的行为,即便它们具有相同的公共基类。继承是一种创建新类的方法,其中新类(派生类)从现有类(基类)继承成员,并可以添加新成员。当使用派生类类型的指针或引用调用虚函数时,会调用派生类中重写的方法。
C++ 中继承如何实现多态性
什么是多态性?
多态性允许对象具有不同的行为,即便它们具有相同的公共基类。在 C++ 中,使用继承实现多态性。
继承
继承是创建类的新方法的方法,其中新类(派生类)从现有类(基类)继承。派生类继承基类的所有成员(数据和函数),还可以添加自己的新成员。
多态性是如何通过继承实现的?
在多态性中,派生类对象可以指向其基类类型的指针或引用。当使用派生类类型的指针或引用调用虚函数时,会调用派生类中重写的方法。
示例:
class Animal { public: virtual void makeSound() { cout << "Animal makes a sound" << endl; } }; class Dog : public Animal { public: void makeSound() override { cout << "Woof woof!" << endl; } }; class Cat : public Animal { public: void makeSound() override { cout << "Meow meow!" << endl; } }; int main() { Animal* animal = new Cat(); // 指向 Cat 对象的 Animal 指针 animal->makeSound(); // 输出 "Meow meow!" }
登录后复制
在上面示例中:
- Animal 是基类。
- Dog 和 Cat 是派生类。
- makeSound 是一个虚函数,在派生类中重写。
- animal 是一个指向派生类对象的基类指针。
当调用 animal->makeSound() 时,会调用派生类(Cat)中重写的 makeSound 方法,输出 “Meow meow!”。
以上就是C++ 中继承如何实现多态性?的详细内容,更多请关注叮当号网其它相关文章!
文章来自互联网,只做分享使用。发布者:张大嘴,转转请注明出处:https://www.dingdanghao.com/article/521456.html