class Foo{
public:
Foo(){
cout <<"C ";
}
~Foo(){
cout <<"D ";
}
};
void func(){
Foo* p = new Foo;
p = NULL;
}
int main(){
Foo a;
for (int i=0; i<1; i++){
Foo b;
if (true){
Foo c;
}
func();
}
return 0;
}
对于这个问题,输出是CCCDCDD,如果我把main函数中的func()删掉,输出就变成了CCCDDD,我明白了前3个C是哪里来的,但我不明白剩下的,请解释一下, 谢谢。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句