这个选择题正确答案为A,
析构函数的调用顺序为B、A、D、C;
A、B为局部变量,在main函数结束前调用析构函数清理,A、B的析构函数调用顺序与构造函数相反。因为A在前面,B在后面,所以构造顺序:A、B;析构顺序:B、A。局部静态变量是在main函数结束后析构,所以顺序排在A后面。全局变量C最后析构。
构造函数的调用顺序为C、A、B、D。
C为全局变量,在最前面,所以C肯定最先构造。接下来是A、B。因为D的代码行位置在B后面,程序执行到这里时才会构造D,所以D最后构造。
这个选择题正确答案为A,
析构函数的调用顺序为B、A、D、C;
A、B为局部变量,在main函数结束前调用析构函数清理,A、B的析构函数调用顺序与构造函数相反。因为A在前面,B在后面,所以构造顺序:A、B;析构顺序:B、A。局部静态变量是在main函数结束后析构,所以顺序排在A后面。全局变量C最后析构。
构造函数的调用顺序为C、A、B、D。
C为全局变量,在最前面,所以C肯定最先构造。接下来是A、B。因为D的代码行位置在B后面,程序执行到这里时才会构造D,所以D最后构造。