C++0x erase in loop

现在正在使用C++开发一个S/C的程序,用到有趣的C++,竟然还是成为笑话。一个删除std::vecotr里面元素的编写,就让我头大了两个小时,郁闷郁闷。#include #include int main() { std::vector x = { 0, 1, 2, 3, 4, 5, 6 }; auto i = x.begin(); while( i!=x.end() ) { if( *i / 2 ) x.erase(i++); else i++; } for(auto y:x) { std::cout « y « " “; }}

<span title='2012-06-07 04:43:00 +0000 UTC'>2012/06/07 Jun</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;44 words&nbsp;·&nbsp;map[name:SCys uri:]