C/C++の宿題を片付け ..
875:デフォルトの名無しさん
08/03/31 23:14:51
pop_backした際にiteratorが無効になるので駄目。
なので
while( ! v.empty() ){
delete v.back();
v.pop_back();
}
もしくは
for(std::vector<Hoge*>::reverse_iterator itr = v.rbegin();itr != v.rend();++itr)
delete *itr;
v.clear();
もしくは
std::for_each(v.rbegin(),v.rend(),boost::checkd_deleter<Hoge>());
v.clear();
あたりをどうぞ。
2番目か3番目がお勧め(3は要boost)
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
4980日前に更新/299 KB
担当:undef