123456

 

2011年10月15日

#pragma init_seg 对象的初始化和析构顺序

摘要: 先进后出原则,最先初始化的最后析构!1.C++中全局对象、变量的构造函数调用顺序是跟声明有一定关系的,即在同一个文件中先声明的先调用。对于不同文件中的全局对象、变量,它们的构造函数调用顺序是未定义的,取决于具体的编译器2.C++总是按成员变量在类声明中出现的顺序来初始化成员变量的,为什么C++不按初始化列表的顺序来初始化成员变量呢?因为我们知道初始化的顺序应该与析构的顺序相反,而对一个类来说 constructor 可能有多个,初始化列表也会有多个,所以C++就选择了简单的点的方法,按成员变量出现的顺序来初始化。3.基类的静态变量先初始化,然后是它的派生类。直到所有的静态变量都被初始化。这里需 阅读全文

posted @ 2011-10-15 17:35 hgy413 阅读(753) 评论(0) 推荐(0) 编辑

导航