C++面向对象复习(三)——构造函数与析构函数的调用顺序
2010-05-08 02:08
656 查看
调用构造函数和析构函数的顺序
先构造的后析构,后构造的先析构。
归纳下什么时候调用构造函数和析构函数
(1) 全局范围内定义的对象,他的构造函数在文件中所有函数执行之前执行。但是当程序定义了多个文件,而不同的文件中都定义全局变量时候,,则对象的构造函数的调用顺序是不确定的,当main函数结束或者运行了exit函数时,调用析构函数
(2) 定义的是局部自动对象时,则在建立对象是调用其构造函数。如果函数多次调用,则在每次建立对象是后都要调用构造函数,函数调用结束时调用析构函数
(3) Static定义的静态对象时,只在对象建立时调用一次构造函数,当进行main函数结束或exit时,调用析构函数
先构造的后析构,后构造的先析构。
归纳下什么时候调用构造函数和析构函数
(1) 全局范围内定义的对象,他的构造函数在文件中所有函数执行之前执行。但是当程序定义了多个文件,而不同的文件中都定义全局变量时候,,则对象的构造函数的调用顺序是不确定的,当main函数结束或者运行了exit函数时,调用析构函数
(2) 定义的是局部自动对象时,则在建立对象是调用其构造函数。如果函数多次调用,则在每次建立对象是后都要调用构造函数,函数调用结束时调用析构函数
(3) Static定义的静态对象时,只在对象建立时调用一次构造函数,当进行main函数结束或exit时,调用析构函数
相关文章推荐
- C++中对象作为函数形参,返回值时,构造函数,复制构造函数,析构函数的调用顺序(1)
- 【c++继承】继承关系中派生类对象构造函数和析构函数调用顺序
- C++面向对象复习(二)——析构函数
- C++中多个类继承时构造函数与析构函数的调用顺序
- 宋体、构造函数-浅出C++对象模型——理解构造函数、析构函数执行顺序-by小雨
- C++复习14 构造函数初始化调用顺序
- C++和java中构造函数与析构函数的调用顺序
- C++基础:派生类的构造函数与析构函数调用顺序
- C++继承中析构函数 构造函数的调用顺序以及虚析构函数
- c++学习笔记4,派生类的构造函数与析构函数的调用顺序(一)
- C++中构造函数和析构函数的调用顺序
- C++继承中构造函数、析构函数调用顺序及虚析构函数
- C++中构造函数与析构函数的调用顺序
- c++学习笔记4,派生类的构造函数与析构函数的调用顺序(一)
- 建立全局和局部对象时,不同的构造函数和析构函数的调用顺序
- 【C++面向对象学习笔记】-构造函数和析构函数
- C++学习笔记(调用构造函数和析构函数的顺序)
- 理解C++存在继承和组合的对象构造函数调用顺序
- C++ 构造函数和析构函数的调用顺序、虚析构函数的作用
- C++语言基础 例程 调用构造函数和析构函数的顺序