含对象成员类的构造顺序
来源:互联网 发布:sx2150k基本数据 编辑:程序博客网 时间:2024/04/30 13:43
源程序:
#include <iostream>
using namespace std;
class A
{
private:
public:
};
class B
{
private:
public:
};
class C
{
private:
public:
};
void main()
{
C c;
cout<<"back in main..."<<endl;
}
1、当主函数运行时,遇到要创建C类的对象,于是调用其构造函数C(),该构造函数启动时,首先分配对象空间(包含一个A对象、一个B对象和一个int型数据),然后根据在类中声明的对象成员的次序依次调用其其构造函数(而不是根据它们在成员初始化列表中的说明次序进行调用)。这里先调用B对象的构造函数(B类中包含A类的对象成员,所以也需要先调用A类的构造函数),再调用A类的构造函数,最后调用C类的构造函数。析构函数的调用次序是:先调用本身类的析构函数,再调用成员对象类的析构函数。如果有多个成员对象,则成员对象析构函数的调用次序与它们的构造函数的调用次序正好相反。
2、与变量定义类似,在用默认构造函数创建对象时,如果创建的对象时全局的或者时静态的,则对象的位模式全为0,否则对象值时随机的。
输出:
- 含对象成员类的构造顺序
- 含对象成员类的构造顺序
- 含对象成员类的构造顺序
- 含对象成员类的构造顺序
- (1.4.1)虚继承、虚函数继承、多重继承和“含对象成员类的构造顺序”
- C++类对象数据成员的构造函数初始化顺序
- 构造函数的执行顺序---派生类构造函数 and 父类构造函数 and 成员对象构造函数
- c++类中成员的构造顺序
- C++构造函数中成员对象的初始化顺序
- c++对象成员变量的构造和析构顺序
- C++中构造函数,成员对象的初始化顺序
- 父类的成员对象、父类、子类的构造函数的执行顺序
- java类构造对象的构造顺序
- C++中基类,派生类 类成员对象的构造函数,析构函数的顺序
- 包含对象成员的类的构造与析构顺序
- 例4.9 含有多个对象成员的派生类构造函数的执行顺序
- 探究类对象在创建时各成员的构造顺序
- C++构造函数执行顺序测试(成员包含其他类对象的时候)
- Struts2之ajax初析
- 贝儿的伤感爱情空间日志发布:宝贝,快回头吧,我等你
- c语言学习笔记十八
- hdu 4301 Divide Chocolate
- Java---Socket编程基础理论
- 含对象成员类的构造顺序
- Mac BCCollectionView的使用(三)
- 范特西的伤感空间日志推荐:我在风中颤抖,你却再难回头
- 微软等数据结构+算法面试100题全部答案集锦
- 简单通俗的由入侵反应如何加强网站及服务器部署
- 按文件字符集类型读取配置文件
- 大数乘法
- 织梦如何在列表语句中做if判断
- 木头人的伤感空间日志发布:再美只是瞬间而已~~~