我有一个简短的问题,让我有些悲伤。作为一个更大项目的一部分,我想扫描一个向量以查找为 0 的元素,并在找到它们时将其删除。我很好奇为什么以下是可以的:
if (playerVec[5] == 0)
但这不是:
for(vector<Player>::iterator it = playerVec.begin(); it != playerVec.end(); ++it) {
if(playerVec[it] == 0) { //Invalid if condition
}
我认为它与它是一个迭代器的因素有关,但是我怎么能在 for 循环中处理删除呢?我需要另一个变量来索引吗?