代码之家  ›  专栏  ›  技术社区  ›  Aviadjo

运行时错误:运行时错误:映射/集迭代器不兼容

  •  0
  • Aviadjo  · 技术社区  · 15 年前
    void Manager::Simulate(Military* military, Shalishut* shalishut,char* args[]){
        Simulation* simulation = Simulation::GetInstance();
        Time* time = Time::GetInstance();
        multimap<int,Task*>::const_iterator itTasks;
        itTasks = simulation->GetTasks().begin();
        while(itTasks != simulation->GetTasks().end()){
            while (itTasks->second->GetTimeStamp() == time->GetTime()){
                //TaskExecute(itTasks->second,military,shalishut,args);
                itTasks++;
            }
            // Unit take car of vehicles
            time->TimeIncrease();
        }
    }
    

    在debug中,注意到当项目到达第一个时间点时,它会下降。

    谢谢你的帮助。

    1 回复  |  直到 15 年前
        1
  •  2
  •   sth    15 年前

    GetTasks()

    begin() end()


    Simulation

    class Simulation {
       ...
       multimap<int,Task*>& GetTasks() { return m_tasks; } 
       const multimap<int,Task*>& GetTasks() const { return m_tasks; } 
    }