码迷,mamicode.com
首页 > 编程语言 > 详细

【C++】C++自学进阶(5):继承(1)——入门

时间:2016-04-03 18:52:57      阅读:206      评论:0      收藏:0      [点我收藏+]

标签:

  继承能将定义的新类包含有已有类的所有属性,这样能实现很多新的功能,实际运用上也更加方便。

  已经存在的类叫做基类父类,新建立的类叫做子类派生类。一些概念:单继承(single inheritance)、多重继承(multiple inheritance)。直接继承,间接继承。继承具有传递性非对称性

一、定义方法和派生类的构成

单继承:
class 类名: 继承方式 基类名
{
    ......
};

多重继承:
class 类名: 继承方式 基类名1,继承方式 基类名2......
{
    ......
};

  继承方式有public, private和protected。

  构成时三步走:

  ①接受基类成员。除构造函数和析构函数,全盘接受。所以要精心设计以免浪费空间。

  ②改造基类成员。如建立一个与基类中的成员函数名字、类型、参数表一模一样的函数等等。

  ③添加新的成员。添加自己的成员。

 

二、继承中的访问控制

  1、公有继承 public

    这种继承建立起来的派生类称为公用派生类,基类称为公用基类。

    至于访问权限,我觉得用书上这个图、表格挺好的。

技术分享

    在派生类中,私有的(连派生类)也不可以访问,公有还是公有,保护还是保护。

技术分享

    其中protect成员是只允许基类和派生类使用的,也就是说可以给它们的家族用,但是private就只能自己用,派生类也不能用。

  2、私有继承 private

  对应的,私有派生类,私有基类。

技术分享

  3、保护继承  protected

  对应的,保护派生类,保护基类。

技术分享

  主要体现在间接派生类上。间接派生类可以访问它上一级的protected成员,所以protected继承过来的基类成员也可以使用。

【C++】C++自学进阶(5):继承(1)——入门

标签:

原文地址:http://www.cnblogs.com/HappyCtest/p/5350298.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!