StackOverflowを検索しましたが、この質問に対する答えが見つかりませんでした。
std::vector<Day *> vector_day
オブジェクトへのポインタのベクトルである-を持っていると仮定しDay
ます。今私push_back
はvector_day
多くの要素に:
vector_day.push_back(new Day(12));
vector_day.push_back(new Day(99));
vector_day.push_back(new Day(71));
...
今、ある時点で私はもう必要ありませんvector_day
。メモリを解放する正しい方法は何ですか?
これは正しい方法です:
for (std::vector<Day *>::iterator i = vector_day.begin(); i != vector_day.end(); ++i) {
delete *i;
}
これは、削除するたびにベクトルを無効にしませんか?私は非常に混乱しています。