为什么析构函数的cout不输出呢(释放的为全局变量)
#include<iostream>using namespace std;
class A{
public:
A(){
cout<<"A"<<endl;
}
~A(){
cout<<"~ A"<<endl;
//printf("~A \n");
}
};
class B{
public:
B(){
a=new A();
cout<<"B"<<endl;
}
~B(){
delete a;
cout<< "~B"<<endl;
}
private:
A *a;
};
B b; //此处定义全局变量
void main(){
A a;
}
已经跟踪了程序,当程序结束时进入析构函数,但是cout不输出? 如果用printf就可以。