I need some help in understanding what is happening to the vector rvN
This is my understanding:
rvN is a vector containing the number characters 0001. In the function Clear(), all of the leading zeroes are to be erased from the vector. The iterator is set to pointing to past the end of the last vector element (1).
it = 3 *it != 0 (since *it == 1) rvN.erase(it+1, rvN.end()) ->>> rvN.erase(4,rvN.end()) ? How are all of the zeroes eliminated?
for (int i = Number.size() - 1; i >= 0; i--) { if (Number[i]<'0' || Number[i]>'9') break; else rvN.push_back(Number[i] - '0'); } Clear(rvN); } void LargeNumber::Clear(vector<char>& rvN) { //Eliminate all leading 0s vector<char>::iterator it = rvN.end(); while (it != rvN.begin()) { it--; if (*it != 0) break; } rvN.erase(it + 1, rvN.end()); }