c++学习随笔(基本概念篇)

(一)基类和派生类

  • 派生:从一个类构造另一个类的方法,使新构造的类替代原来的类。例如,狗派生自动物类,动物类是狗的基类。派生类除了自己的成员外,还包括基类的所有成员。在某些上下文环境中,派生类称为子类,基类称为父类
  • 虚函数:在基类中定义的一个函数,在派生类中有一个类型和名字一样的函数,当程序调用基类函数时,实际上调用的是派生类的函数。这通常称为运行时多态,动态分派或者运行时分派,因为具体调用哪个函数是根据运行时实际使用的对象类型来决定的。
  • 虚函数表/虚指针:为了处理一个虚函数调用(如上所述),我们需要(且必须)在基类或者是派生类中存储更多信息,目的是当我们调用虚函数时,借助这些存储信息分辨出究竟调用哪个函数。这个存储信息,我们称之为vtbl(虚函数列表,实际上是一个函数列表的地址),它的地址我们用vtpr(虚指针)来表示
  • 覆盖:定义一个和基类中虚函数同名同类型的函数,以使派生类的函数代替基类中的版本被放入vtbl中的技术
  • 纯虚函数:一个或者多个必须在派生类中被覆盖的虚函数。带有纯虚函数的类的目标是提供纯粹的接口,即它们倾向于不包含任何数据成员,因此没有任何构造函数
  • 私有和保护成员:我们保持类的实现细节是私有的,以保护他不被直接访问,简化维护操作,这称为封装

     继承,运行时多态和封装的使用,实际上是面向对象程序设计的最常见的标志。

友元:还没学习

posted @ 2016-01-05 22:51  耀匀  阅读(121)  评论(0编辑  收藏  举报