• c++学习笔记_5


    前言:本笔记所对应的课程为中国大学mooc中北京大学的程序设计与算法(三)C++面向对象程序设计,主要供自己复习使用,且本笔记建立在会使用c和java的基础上,只针对与c和java的不同来写

    继承

    继承和派生的基本概念

    1. c++中的继承和派生是同一概念,其基本定义和用法与java中的类似
    2. 与java中相对应的,父类叫做基类,子类叫做派生类
    3. 写法: “class 派生类名: public 基类名”
    4. 派生类对象的内存空间中包含着基类对象,且基类对象的储存位置位于派生类对象新增的成员变量之前。

    继承关系和复合关系

    较简单,略。

    覆盖和保护成员

    1. 覆盖:定义:派生类中可以定义一个和基类成员同名的成员。使用作用域符号::可以访问基类中的同名成员,不使用作用域符号则访问派生类中成员。
    2. 基类的protected成员可被下列函数访问:
      基类的成员函数
      基类的友元函数
      派生类的成员函数可访问当前对象的基类的保护成员(这一点是相对于private多出来的)

    派生类的构造函数

    1. 派生类的参数初始化方法:调用基类的构造函数。在执行一个派生类构造函数之前,总是先执行基类的构造函数。
    2. 具体写法:有两种,第一是显示方式,在派生类的构造函数的初始化列表中,直接调用基类的构造函数;第二是隐式方式,如果省略不写基类构造函数,则会自动调用基类的无参构造函数(没有无参构造函数时会编译出错)。
    3. 派生类的析构函数被执行时,执行完派生类的析构函数后,自动调用基类的析构函数。
    4. 封闭派生类对象的构造函数执行顺序:先执行基类的,再执行成员对象的,最后执行派生类自己的。派生对象消亡时顺序恰好相反。

    公有继承的赋值兼容规则

    规则大体上同java。

    1. 派生类对象可以赋值给基类对象。
    2. 派生类对象可以初始化基类引用。
    3. 派生类对象的地址可以赋值给基类指针。
      (派生方式不是public,而是private或者protected,则上述规则不成立)
  • 相关阅读:
    [整] Android Fragment 生命周期图
    LruCache--远程图片获取与本地缓存
    Android基于XMPP Smack openfire 开发的聊天室
    基于XMPP协议的Android即时通信系
    Android实现推送方式解决方案
    日历工具类(一)——公历农历互相转换
    IdHTTPServer使用注意问题
    用TIdIPWatch获取本地IP
    delphi TStringList 用法详解
    WIN7 64位配置X86 MySQL 数据源
  • 原文地址:https://www.cnblogs.com/fyunaru/p/11478388.html
Copyright © 2020-2023  润新知