C++ 基本知识
2015-08-29 16:20
337 查看
无论父类与子类的析构函数是否是virutal,子类的析构函数都会调用父类的析构函数
[b]调用构造函数是与构造函数顺序相反,先子类后基类,否则如果基类先析构,子类的有些资源已经不存在了,会出错。[/b]
[b]在C++中,类的成员变量的初始化顺序只与变量在类中的声明顺序有关,因为成员变量的初始化次序跟变量在内存中的次序有关,而内存中的排列顺序早在编译期就根据变量的定义次序决定了。从全局看,变量的初始化顺序如下:[/b]
[b]1.基类的静态变量或全局变量[/b]
[b]2.派生类的静态变量或全局变量[/b]
[b]3.基类的成员变量[/b]
[b]4.派生类的成员变量[/b]
[b]三大特性:[/b]
[b]1.封装是指每个类对自身的数据和方法进行保护;[/b]
[b]2.继承是指可以使用现有类的所有功能,而不用重新编写,目的是为了实现代码复用和多态;[/b]
[b]3.多态指允许将子类类型的指针赋值给父类类型的指针(或者引用)。[/b]
[b]调用构造函数是与构造函数顺序相反,先子类后基类,否则如果基类先析构,子类的有些资源已经不存在了,会出错。[/b]
[b]在C++中,类的成员变量的初始化顺序只与变量在类中的声明顺序有关,因为成员变量的初始化次序跟变量在内存中的次序有关,而内存中的排列顺序早在编译期就根据变量的定义次序决定了。从全局看,变量的初始化顺序如下:[/b]
[b]1.基类的静态变量或全局变量[/b]
[b]2.派生类的静态变量或全局变量[/b]
[b]3.基类的成员变量[/b]
[b]4.派生类的成员变量[/b]
[b]三大特性:[/b]
[b]1.封装是指每个类对自身的数据和方法进行保护;[/b]
[b]2.继承是指可以使用现有类的所有功能,而不用重新编写,目的是为了实现代码复用和多态;[/b]
[b]3.多态指允许将子类类型的指针赋值给父类类型的指针(或者引用)。[/b]
相关文章推荐
- [leetcode]Isomorphic Strings C语言
- C/C++编译和链接过程详解 (重定向表,导出符号表,未解决符号表)
- C/C++ 中的0长数组(柔性数组)
- 转:TinyXM--优秀的C++ XML解析器
- 找工作C++面试资料之问答题整理(1)
- c++-面向对象类
- c++ stdafx.h、targetver.h文件
- C++深拷贝与浅拷贝
- 文件重命名小程序(适用于unix系c++)
- C语言qsort函数用法
- 《IOS_C语言》结构体、结构体数组
- Kth Largest Element in an Array
- VS中C++对象的内存布局
- [leetcode]Valid Anagram C语言
- C++16个常用面试题
- C语言_为什么字符串可以赋值给字符指针变量,字符串的属性及存放位置
- c++ assert() 使用方法
- C++ vector用法
- 作业《IOS_C语言》函数分类、函数声明和定义、函数调用、形参实参、函数嵌套调用
- 【转载】高效排序——归并排序