C++中迭代器例子 没看懂 请大家帮忙解释下~
#include <vector >
void even_odd( const vector<int> *pvec,
vector<int> *pvec_even,
vector<int> *pvec_odd )
{
// 必须声明一个 const_iterator, 才能够遍历 pvec
vector<int>::const_iterator c_iter = pvec->begin();
vector<int>::const_iterator c_iter_end = pvec->end();
for ( ; c_iter != c_iter_end; ++c_iter )
if ( *c_iter % 2 ) //?????为什么除以二?
pvec_odd->push_back( *c_iter );
else pvec_even->push_back( *c_iter ); //以上两行区别???
}
[解决办法]
if ( *c_iter % 2 ) //?????为什么除以二?
这是对2取余数,结果为1就是奇数,放到奇数的vector里,
否则就放在偶数的vector里。