c++ vector::iterator first=v.begin(),last=v.end(); while(first!=last){ first=v.insert(first,42);哪里错了?怎么改?
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/20 12:38:16
![c++ vector::iterator first=v.begin(),last=v.end(); while(first!=last){ first=v.insert(first,42);哪里错了?怎么改?](/uploads/image/z/12795857-17-7.jpg?t=c%2B%2B+vector%3A%3Aiterator+first%3Dv.begin%28%29%2Clast%3Dv.end%28%29%3B+while%28first%21%3Dlast%29%7B+first%3Dv.insert%28first%2C42%29%3B%E5%93%AA%E9%87%8C%E9%94%99%E4%BA%86%3F%E6%80%8E%E4%B9%88%E6%94%B9%3F)
c++ vector::iterator first=v.begin(),last=v.end(); while(first!=last){ first=v.insert(first,42);哪里错了?怎么改?
c++ vector::iterator first=v.begin(),last=v.end(); while(first!=last){ first=v.insert(first,42)
;哪里错了?怎么改?
c++ vector::iterator first=v.begin(),last=v.end(); while(first!=last){ first=v.insert(first,42);哪里错了?怎么改?
因为循环里有Insert操作,所以.end()返回的迭代器指针是不能事先确定的.
应该去掉last = v.end();这句,同时把while的条件改为 first != v.end()