tsluga
27-07-2007, 17:35
HI,
ich habe mal ne (blöde) Frage :
#include <iostream>
using namespace std;
class T{
public:
~T()
{
_i++;
std::cout<<"destructor der der instanz : "<<_i<<endl;
}
private:
static int _i;
};
int T::_i = 0;
int main(void)
{
T a;
{
T b;
}
while(true);
return 0;
}
Wenn ich dieses Programm starte, wird der Destruktor von b ganz normal aufgerufen der von a aber nicht, sogar, wenn ich das Programm kille. Wieso ?
ich habe mal ne (blöde) Frage :
#include <iostream>
using namespace std;
class T{
public:
~T()
{
_i++;
std::cout<<"destructor der der instanz : "<<_i<<endl;
}
private:
static int _i;
};
int T::_i = 0;
int main(void)
{
T a;
{
T b;
}
while(true);
return 0;
}
Wenn ich dieses Programm starte, wird der Destruktor von b ganz normal aufgerufen der von a aber nicht, sogar, wenn ich das Programm kille. Wieso ?