// remove3.cpp - Erase all the zero elements in a vector. // This is an effective method. It is // exactly what remove does. #include #include using namespace std; void showVec(const vector &v) { cout << "\n "; int i; for(i=0; i v; v.push_back(5); v.push_back(1); v.push_back(0); v.push_back(-1); v.push_back(0); v.push_back(3); v.push_back(0); v.push_back(0); v.push_back(-4); v.push_back(0); showVec(v); vector::iterator dest = v.begin(); vector::iterator src; for(src=v.begin(); src!=v.end(); src++) if(*src != 0) *dest++ = *src; v.erase(dest,v.end()); showVec(v); }