无法在向量

时间:2017-05-14 09:27:43

标签: c++ class iterator

int RobotDB::findRobot(const std::string name) {
  int index = 0;
  RobotVec_it iter_find;
  iter_find = robots.begin();
  while (iter_find != robots.end()) {
    if (( * iter_find) - > getName() == name) {
      return index;
    }
    index++;
    iter_find++;
  }
  return -1;
}

class Robot {
  private:
    Coordinate coordinate;
    const string name;
    int dust_bin;
    connection_e con;
};

inline const string & getName() {
  return name;
}

我有一个*机器人的矢量,机器人是我给的一个类,包含一个坐标,名称,垃圾箱,其中包含收集的灰尘量,如果机器人状态是可通信的或不可通信的,这会影响到发给他命令。 我编写函数findRobot来帮助我识别机器人向量中的特定机器人。但是,使用调试我发现某些东西不能正常工作。也许函数getName()并没有像它应该的那样真正返回名称。不确定我做错了什么。提前谢谢。

我添加了相关代码,findRobot出现在RobotDB.cpp中,而类和getName函数位于RobotDB.h中

0 个答案:

没有答案