转自http://blog.csdn.net/hgj125073/article/details/8651557
笔试题之三:类和对象的区别
类是对象的抽象,对象是类的具体实例。
类是抽象的,不占用内存,而对象是具体的,占有内存空间。
例如:类就是水果,对象就是苹果。
继承与多态
多态性指用一个名字定义不同的函数,这函数执行不同但又类似的操作,从而实现“一个接口,多种方法”。
多态性的实现与静态联编 动态联编有关。
静态联编支持的多态性称为编译时的多态性,也称静态多态性,它可以通过函数重载和运算符重载实现。
动态联编支持的多态性称为运行时的多态性,也称动态多态性,它是是通过继承和虚函数实现的。
函数重载的意义在于他能用同一个名字访问一组相关的函数。
继承是指一个对象可以直接使用另一个对象的属性和方法,通过继承机制,可以利用已有的数据类型来定义新的数据类型。
虚函数是重载的另一种表示,允许虚函数调用与函数体之间的联系在运行时才建立。
构造函数不能是虚函数,但析构函数可是以虚函数。
纯虚函数:是一个在基类中说明的虚函数,他在该基类中没有定义,但要求在它的派生类中定义自己的版本。
纯虚函数的一般形式:virtual type funcname(paremeter...)=0
抽象类:一个类至于少有一个纯虚函数的类,抽象类提供了处理各种不同派生类的统一接口,将实现的责任交给了派生类。