将多个类共有的特性抽象封装成一个纯虚函数,可以借由全局函数灵活控制调用的是父类子类中的共有函数。如【飞行能力类】是【飞机类】和【战斗机类】所共有的,既可以由【战斗机类】多重继承【飞机类】->【飞行能力类】,也可以【战斗机】多继承【飞机类】+【飞行能力类】。如果不把【飞行能力类】抽象成一个独立的类,那么【鸟类】将无法继承【飞行能力类】,得在函数体内重新定义一个【飞行能力类】。如果还有【苍蝇类】等诸多具有相同能力的类,那么类的声明与定义将变得繁琐和冗杂,不利于程序的编写和阅读。可以视为对人类世界抽象概念的具体化。比如【战斗】【飞行】【表演】【学习】【繁衍】等等。
2018-04-18
纠正一下2333,因为我实例化的时候用的不是Shape实例化的图形,所以直接调用了图形的calcArea函数,发现已经删不了上一条评论了 ,尴尬
2018-04-15