У меня есть вектор v1
и булев вектор v2
того же размера. Я хочу удалить из v1
все значения, чтобы параллельный элемент v2
был false
:
vector<int> v3; // assume v1 is vector<int>
for (size_t i=0; i<v1.size(); i++)
if (v2[i])
v3.push_back(v1[i]);
v1=v3;
Есть ли лучший способ сделать это?
- в С++ 03
- в С++ 11