Original Post
hi!
in the msdn, it says that vector::clear() calls destructors, but in my code, it doesnt seem to be:
!?
this is my first vector program so maybe i am doing something wrong. i know the destructors arent being called cause they print out somethjing like "animal is dead".
thanks!
Edited by - evilcrap on December 29, 2001 9:22:28 PM
Edited by - evilcrap on December 29, 2001 9:23:25 PM
void main()
{
vector<CBASE_ANIMAL*> vpba;
CBASE_ANIMAL *pba = NULL;
pba =(CBASE_ANIMAL*) new CCAT;
vpba.push_back(pba);
pba =(CBASE_ANIMAL*) new CDOG;
vpba.push_back(pba);
vector<CBASE_ANIMAL*>::iterator It;
for( It = vpba.begin(); It != vpba.end(); It++)
{
(*It)->Act();
}
vpba.clear(); //should call destructors, but dont
cout << vpba.empty (); //true
}//main
|