C++面向对象复习(三)——构造函数与析构函数的调用顺序
调用构造函数和析构函数的顺序
先构造的后析构,后构造的先析构。
归纳下什么时候调用构造函数和析构函数
(1) 全局范围内定义的对象,他的构造函数在文件中所有函数执行之前执行。但是当程序定义了多个文件,而不同的文件中都定义全局变量时候,,则对象的构造函数的调用顺序是不确定的,当main函数结束或者运行了exit函数时,调用析构函数
(2) 定义的是局部自动对象时,则在建立对象是调用其构造函数。如果函数多次调用,则在每次建立对象是后都要调用构造函数,函数调用结束时调用析构函数
(3) Static定义的静态对象时,只在对象建立时调用一次构造函数,当进行main函数结束或exit时,调用析构函数