メモリ内のポインターのベクトルと指定されたオブジェクトを削除する方法を理解しようとしています。別のスレッドで見つかった簡単な例から始めましたが、「解放されているポインターが割り当てられていません」というエラーが発生します。
私が間違っていることは何ですか?
#include <vector>
#include <algorithm>
#include <iostream>
int main(){
std::vector <int *> vec;
int a = 2;
int * b = &a;
int c = 3;
int * d = &c;
vec.push_back(b);
vec.push_back(d);
for (int i = 0; i < vec.size(); i++) {
delete vec[i];
}
vec.clear();
}