首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

std:地图 iterator移动有关问题

2013-07-04 
std::map iterator移动问题int main (){std::mapchar,int mymapstd::mapchar,int::iterator itmymap

std::map iterator移动问题

int main ()
{
  std::map<char,int> mymap;
  std::map<char,int>::iterator it;

  mymap['b'] = 100;
  mymap['a'] = 200;
  mymap['c'] = 300;

  // show content:
  for (std::map<char,int>::iterator it=mymap.begin(); it!=mymap.end(); ++it)
    std::cout << it->first << " => " << it->second << '\n';

  return 0;
}


问题:it能用++

可以这样用的么?
例如std::map<char,int>::iterator it = mymap.begin() + N

举个例子,我想快速移到第N个.有什么好方法?


[解决办法]
目前是可以,但是++是重载的,保不齐哪个版本就不是+1的了。
[解决办法]
std::map<char,int>::iterator it = mymap.begin();
std::advance(it, N);

热点排行