我有某个类的std :: vector,在我的程序中我有一些指向向量中几个项目的指针,问题是当我删除一个项目时,例如第一个项目,所有指针都是错误的,这是一个例子代码:
vector<int> numbers;
numbers.push_back(100);
numbers.push_back(200);
numbers.push_back(300);
int *pNum = & numbers[1]; // pNum pointer to 200
numbers.erase(numbers.begin()); // now pNum pointer to 300
我明白为什么会这样,问题是是否有办法解决这个问题?