M
Mike Copeland
In the following code (which seems to work), I must decrement the
vector offset (mmm) when I declare the iterator I use to delete an
object. Can someone explain why, even though I can address the object
(in the for loop) directly?
Or is there a better way to do this? TIA
vector<time_t> scoreTimes;
bool bFound = false;
size_t mmm;
time_t delT1 = [some_value], delT3;
for(mmm = 0; mmm < scoreTimes.size(), bFound == false; mmm++)
{
if(scoreTimes.at(mmm) == delT1) bFound = true;
} // for
if(bFound) // found object to delete
{
vector<time_t>::iterator vIt = scoreTimes.begin()+(--mmm); //???
delT3 = *vIt;
scoreTimes.erase(vIt);
}
}
vector offset (mmm) when I declare the iterator I use to delete an
object. Can someone explain why, even though I can address the object
(in the for loop) directly?
Or is there a better way to do this? TIA
vector<time_t> scoreTimes;
bool bFound = false;
size_t mmm;
time_t delT1 = [some_value], delT3;
for(mmm = 0; mmm < scoreTimes.size(), bFound == false; mmm++)
{
if(scoreTimes.at(mmm) == delT1) bFound = true;
} // for
if(bFound) // found object to delete
{
vector<time_t>::iterator vIt = scoreTimes.begin()+(--mmm); //???
delT3 = *vIt;
scoreTimes.erase(vIt);
}
}