这是我第一次碰到多态类型的问题,说实话刚看到题的时候有点懵,不知道从哪里下手,其实说白了,多态就是“一个父亲多个儿子或者一个儿子多个父亲”,也就是继承的多了罢了,还有就是要注意在对子类进行构造时,要对父类进行再次声明,
| #include <iostream> using namespace std; class Fruit { public : virtual void input() = 0; virtual double total() const = 0; public : Fruit( ) { } protected : double uprice; int num; }; class Apple : public Fruit { public : void input() { cin >> uprice; cin >> num; } double total() const { return uprice * num * 30; } public : Apple( ) : Fruit() { } }; class Banana : public Fruit { public : void input() { cin >> uprice; cin >> num; } double total() const { return uprice * num * 25; } public : Banana( ) : Fruit() { } }; |
这个题其实没用到具体的太多关于多态的语法,那我就来介绍一下虚函数virtual的用法吧:
这是我在别的大神那学来的,觉得学到了很多(原文连接:你了解c++中的关键字virtual吗?_放荡不羁笑点低233的博客-CSDN博客_virtual在c++中什么意思)
记录当下,我的编程之路