2017 09 18

相关知识点的学习与运用:

一.继承和派生:

1.继承:

1-1基本结构:

class派生类名:继承方式  基类名

{派生类中的新成员}

class Master :public Student{};

三种继承方式:

公有继承:public

私有继承:private

保护继承:protected

①类的继承方式为公有继承时,基类的公有和保护成员的访问属性在派生类中不变,而基类的私有成员不可访问。

派生类可以继承使用基类公有的和保护的,但私有的只有基类在本类中可使用,派生类无法使用!!!!

在类外部(大括号外)基类公有的可用,保护的不可用,私有的更不可用。

②当类的继承方式为保护继承时,基类的公有和保护成员都以保护成员身份出现在派生类中,而基类的私有成员不可访问。

③当类的继承方式为私有继承时,基类的公有和保护成员都以私有成员身份出现在派生类中,而基类的私有成员不可访问。

***②protected继承和③private继承得到的类都不是子类

“凡是父类对象可以出现的地方可以用子类对象代替”,不再适用

1-2继承的本质:

实际上就是由上到下完全的复制;但是在对内可见性上做了手脚,对外可见性则没有改变。

c++提供了类的继承机制,解决了软件的复用问题。

自动的、滚动式的重用代码,增强代码,使得编程方式根本转变,分析问题、解决问题的模式从功能模式转向面向对象的结构模式

2.派生:

2-1派生类继承了基类的除了构造函数、析构函数、拷贝构造函数和赋值运算符重载函数之外的所有成员,因此派生类对象由两部分组成:一部分是由基类继承的成员,另一部分是派生类新增加的自己特有的成员。

2-2里氏代换原则:

(LSP-Liskov Substitution Principle)

在软件里面,把基类都替换成它的子类,程序的行为没有变化。

2-3注意:基类指针指向派生类对象时,只能通过基类指针访问派生类中从基类继承来的成员,不能访问派生类中的其它成员。说明派生类对象包含父类对象全部内容,凡是父类对象可以出现的地方可以用子类对象代替,反之不可

二.继承时的构造函数

1.基类的构造函数不被继承,需要在派生类中自行声明。

声明构造函数时,只需要对本类中新增成员进行初始化,对继承来的基类成员的初始化由基类完成。

2.单继承时的构造函数

派生类名::派生类名(基类所需的形参,本类成员所需的形参):基类名(参数){

本类成员初始化赋值语句;};

3.父类的构造函数、析构函数拷贝构造函数、赋值运算不可以被继承;要各司其职

***派生类构造函数执行的一般顺序是:

(1)基类构造函数,

(2)派生类对象成员类的构造函数(如果有的话)。

(3)派生类构造函数体中的内容。

释放派生类对象时,析构函数的执行顺序是:

先执行派生类的析构函数,

再执行对象成员类的析构函数(如果派生类有对象成员的话),

最后执行基类的析构函数,其顺序与执行构造函数时的顺序正好相反.

4派生类成员的标识与访问

同名覆盖原则:

当派生类与基类中有相同成员时:若未强行指名,则通过派生类对象使用的是派生类中的同名成员。如要通过派生类对象访问基类中被覆盖的同名成员,应使用基类名限定。

5.多重继承

class派生类名:继承方式1基类名1,继承方式2基类名2,...{成员声明;}

注意:每一个“继承方式”,只用于限制对紧随其后之基类的继承。

6.多继承时的构造函数

派生类名::派生类名(基类1形参,基类2形参,...基类n形参,本类形参):基类名1(参数),基类名2(参数), ...基类名n(参数){本类成员初始化赋值语句;};

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • C++文件 例:从文件income. in中读入收入直到文件结束,并将收入和税金输出到文件tax. out。 检查...
    SeanC52111阅读 7,951评论 0 3
  • 前言 把《C++ Primer》[https://book.douban.com/subject/25708312...
    尤汐Yogy阅读 13,146评论 1 51
  • 继承和多态 1. 继承的优缺点 优点:(1)子类可以灵活地改变父类中的已有方法;(2)能够最大限度的实现代码重用。...
    MinoyJet阅读 3,860评论 0 0
  • 路过那里,可是我不喜欢! 尽管那里,篱院一角会爬满木香,春天会散发浓郁的芬芳!只三两米的距离,木香缠缠绕绕,挨挨挤...
    心若芷兰阅读 2,985评论 12 18
  • 霜降荷残寒冷冽, 叶扶茎挺抗严冬。 风摇水漾根深入, 泥沼生长藕勇冲。 (平水韵)
    六月天气阅读 4,012评论 13 38