有没有办法可以获得迭代器的计数?
所以,如果一开始我有这个:
for (int i = 0; iter < agents.size(); ++i)
{
agents[i]->Index(i);
}
Run Code Online (Sandbox Code Playgroud)
请记住Index()设置一个整数,我将如何使用迭代器?
for (std::vector<Agent*>::iterator iter = agents.begin(); iter < agents.end(); ++iter)
{
(*iter)->Index(????)
}
Run Code Online (Sandbox Code Playgroud)
你想要distance http://www.cplusplus.com/reference/std/iterator/distance/
(*iter)->Index(distance(agents.begin(),iter));
Run Code Online (Sandbox Code Playgroud)