STL问题,为什么单独调用了两次析构函数???????代码如下:
lovec 2001-12-29 09:49:59 #include<iostream.h>
#include<stl.h>
#include<vector.h>
class day {
int dayCount;
public:
day(int daycount=30):dayCount(daycount) {
cout<<"day constructor!!!!!\n";
}
friend ostream& operator << (ostream& os,const day& d) {
return os<<d.dayCount;
}
~day() {
cout<<"day destroy construtor!!!!!\n";
}
};
int main()
{
vector<day> mon;
mon.push_back(day(31));
mon.push_back(day(30));
cout<<mon[0]<<endl;
cout<<mon[1]<<endl;
mon.erase(mon.begin(),mon.end());
}