C++公有派生
C++中的公有派生:
  1、格式:Class A:public B{...}:
例如我们先声明了一个基类:SafeIntArray,当我们要声明它的派生类IndexIntArray时,格式如下:
    
2、派生类的构造函数:
(1)派生类不能直接访问基类的私有成员,需要通过基类的构造函数;
(2)基类对象必须先被构造,如果没有使用基类的构造函数,程序将调用基类的默认构造函数;
    (3)为了能先构造出基类对象,C++一般在派生类的构造函数中使用成员初始化列表来构建并初始化基类对象:
         
3、派生类的析构函数:当派生类被释放时,程序会先调用派生类的析构函数,再调用基类的析构函数。
4、派生类的使用:
(1)派生类能够使用基类的非私有方法,如果基类的方法与派生类的某些方法相同,那么在调用时需加上类名,即 class_name :: function_name()。假如基类和派生类都有方法:fun(),当我们重写派生类的fun()的代码中需要用到基类的fun()时,记得加上域名,否则会变成一个无法终止的递归函数。
(2)基类的指针能够在非显式转换下指向派生类对象,基类的引用也可以在不显式转换的情况下指向派生类。反之不行,即不能把基类的对象和地址赋给派生类的引用和指针,如:
      
  //End.
    
C++公有派生的更多相关文章
- C++:基类与派生类对象之间的赋值兼容关系
		4.5 基类与派生类对象之间的赋值兼容关系 在一定条件下,不同类型的数据之间可以进行类型转换,例如可以将整型数据赋给双精度型变量. 在赋值之前,先把整型数据转换为双精度型数据,然后再把它双精度型变量. ... 
- C++:派生类的构造函数和析构函数
		4.2 派生类的构造函数和析构函数4.2.1 派生类构造函数和析构函数的执行顺序 通常情况下,当创建派生类对象时,首先执行基类的构造函数,随后再执行派生类的构造函数:当撤销派生类对象时,则先执行派生类 ... 
- C++:基类和派生类
		4.1 派生类的声明 继承实例如下: class Person{ //声明基类Person public: void print() { cout<<"name:"&l ... 
- 走进C++程序世界------继承和派生
		继承和派生 继承是面向对象编程语言的最重要方面之一,正确的使用继承可编写出设计良好,容易于维护和扩展的应用程序.下面是在其他博客中的总结: ****************************** ... 
- C++学习之路—继承与派生(四)拓展与总结
		(根据<C++程序设计>(谭浩强)整理,整理者:华科小涛,@http://www.cnblogs.com/hust-ghtao转载请注明) 1 拓展部分 本节主要由两部分内容组成,分 ... 
- C/C++基础知识总结——继承与派生
		1. 类的继承与派生 1.1 派生类的定义 (1) 定义规范 class 派生类名: 继承方式 基类1名, 继承方式 基类2名... { ...派生类成员声明; }; (2) 从以上形式上看可以多继承 ... 
- 【C++ 继承与派生/知识梳理】
		为什么引入继承派生 代码重用扩充 软件的复用 层次分类 派生类的语法定义 class 派生类名(1):继承方式(2) 基类名(3){ 派生成员声明:} *(1)一个派生类——>多个基类,多继 ... 
- C++ 继承与派生
		继承的意义? 使程序的设计更符合发展规律,即事物的发展是一个从低级到高级的发展过程,类的继承也是反映由原始的简单代码到丰富的高级代码的过程.它能帮助我们描述事物的层次关系,有效而精确的理解事物,理解事 ... 
- C++学习笔记44:继承与派生
		类的组合,类的继承 类的组合(汽车类,轮子类,此时可以把轮子类组合到汽车类:) 类的继承(交通工具类,汽车类,此时汽车类可以派生自交通工具类:) 组合:常用描述has a.. 继承:常用描述is a ... 
随机推荐
- [转发]黑苹果修改DSDT彻底解决关机不断电和睡眠问题
			1. 在 Method (_PTS, 1, NotSerialized)之前添加一个OperationRegion (PMRS, SystemIO, 0x0430, 0×13),如下: Operati ... 
- CURL函数的GET和POST方式的两种写法(实现ajax跨域调用)
			POST请求 function curl_post($url='',$postdata='',$options=array()){ $ch=curl_init($url); curl_setopt($ ... 
- 自然语言22_Wordnet with NLTK
			QQ:231469242 欢迎喜欢nltk朋友交流 https://www.pythonprogramming.net/wordnet-nltk-tutorial/?completed=/nltk-c ... 
- Java递归算法——二分查找
			import java.lang.reflect.Array; import java.nio.Buffer; import java.util.Arrays; import java.util.Ra ... 
- Comet、SSE、技术
			1.概念: 利用长时间保留的HTTP请求(‘挂起的GET’)来让服务器向浏览器推送数据的技术,经常被称为Comet. SSE让服务器可以向客户端流式发送文本消息,比如服务器上生成的实时通知或更新. 
- Hive部署
			前置环境:CentOS 6.5 + JDK 1.7 + Hadoop 2.6 注:此处采用伪分布安装Hadoop,平时测试使用,Hive的元数据信息使用MySQL存储 一.安装MySQL 1.检查是否 ... 
- virtualbox中centos系统配置nat+host only上网
			以前一直使用的是virtualbox的桥接模式,桥接模式的特点: 虚拟机和宿主机处于同等地位,就像是一台真实主机一样存在于局域网中,可以分配到一个网络中独立的IP. 虚拟机和宿主机之间能够互访. 如果 ... 
- Apache源码包安装和子配置文件介绍--update.2014-12-5
			安装apache: 官网:http://httpd.apache.org/download.cgi#apache24 1.wget http://mirror.bit.edu.cn/apache//h ... 
- PageBase
			namespace Webform.App { public class PageBase : System.Web.UI.Page { } public interface IService< ... 
- Java中关于HashMap的元素遍历的顺序问题
			Java中关于HashMap的元素遍历的顺序问题 今天在使用如下的方式遍历HashMap里面的元素时 1 for (Entry<String, String> entry : hashMa ... 
