C ++中的类向量

时间:2016-12-01 19:18:27

标签: c++ vector

我正在尝试使用类构造函数填充类的向量,但我收到编译错误:

  

1> c:\ users \ admin \ documents \ visual studio   2010 \项目\ file_io_and_main_argv \ file_io_and_main_argv \ file_io_argv.cpp(121):   错误C2663:'std :: vector< _Ty> :: push_back':2个重载没有合法性   'this'指针的转换

我在C ++的Class Player主程序中使用的代码是:

const vector<Player> players;  // vector list of players

  players.push_back(Player(ID,pname,WINS,LOSSES,POSX,POSY));  //insert player into vector of players

错误在点“。”玩家和push_back之间。

2 个答案:

答案 0 :(得分:3)

您的players向量被声明为const

const vector<Player> players;

const意味着:常数。你无法改变它。不能push_back(),不能erase()向量中的现有元素,无法做任何改变向量内容的事情。

从声明中删除const关键字。

答案 1 :(得分:2)

您无法修改const向量。移除const

中的const vector<Player> players;