预测C++程序的输出
null
#include <iostream> using namespace std; int i; class A { public : ~A() { i=10; } }; int foo() { i=3; A ob; return i; } int main() { cout << foo() << endl; return 0; } |
(A) 0 (B) 3. (C) 10 (D) 以上都不是 答复: (B) 说明: 从函数返回时,析构函数是最后要执行的方法。将i的值复制到函数的返回值后,调用对象“ob”的析构函数。因此,在析构函数将i的值更改为10之前,i的当前值会被复制,因此输出为i=3。看到了吗 这 更多细节。 这个问题的小测验
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END