类不能也不必要定义对象。
(2)抽象基类与普通基类不同,它一般并不是现实存在的对象的抽象(例如圆形(Circle)就是千千万万个实际的圆的抽象),它可以没有任何物理上的或其他实际意义方面的含义。
(3)在类的层次结构中,顶层或最上面的几层可以是抽象基类。
抽象基类体现了本类族中各类的共性,把各类中共有的成员函数集中在抽象基类中声明。
(4)抽象基类是本类族的公共接口。
或者说,从同一基类派生出的多个类有同一接口。
(5)区别静态关联和动态关联。
(6)如果在基类声明了虚函数,则在派生类中凡是与该函数有相同的函数名、函数类型、参数个数和类型的函数,均为虚函数(不论在派生类中是否用virtual声明)。
(7)使用虚函数提高了程序的可扩充性。
把类的声明与类的使用分离。
这对于设计类库的软件开发商来说尤为重要。
开发商设计了各种各样的类,但不向用户提供源代码,用户可以不知道类是怎样声明的,但是可以使用这些类来派生出自己的类。
利用虚函数和多态性,程序员的注意力集中在处理普遍性,而让执行环境处理特殊性。
多态性把操作的细节留给类的设计者(他们多为专业人员)去完成,而让程序人员(类的使用者)只需要做一些宏观性的工作,告诉系统做什么,而不必考虑怎么做,极大地简化了应用程序的编码工作,大大减轻了程序员的负担,也降低了学习和使用C++编程的难度,使更多的人能更快地进入C++程序设计的大门。*/
摘自 wwj的梦想之路