C++ 如何在C++;?
我有一个具有以下属性的类播放器:intposx、intposy和intcolorC++ 如何在C++;?,c++,list,object,save,C++,List,Object,Save,我有一个具有以下属性的类播放器:intposx、intposy和intcolor void jugador::dibujar_jugador() // void draw player { gotoxy(x,y); color(col); cout << " O"; gotoxy(x, y+1); cout << " <|> "; gotoxy(x, y+2); cout << " /
void jugador::dibujar_jugador() // void draw player
{
gotoxy(x,y);
color(col);
cout << " O";
gotoxy(x, y+1);
cout << " <|> ";
gotoxy(x, y+2);
cout << " / \\";
}
void jugador::dibujar_jugador()//void draw player
{
gotoxy(x,y);
颜色(col);
cout您正在按值传递boy
void equipo:: mostrar_equipo(jugador boy)//show team
在函数内部,boy
是临时函数。一旦该函数退出,boy
就不再存在。您需要通过引用传递boy
:
void equipo:: mostrar_equipo(jugador& boy)//show team
另外,当您调用insertar\u jugador
时,该参数也会按值传递,使insertar\u jugador
在vec中插入一个boy
的副本。但是您稍后的更改(您调用boy.Setx
和boy.Sety
)对放置在vec数组中的boy
没有影响
为什么不直接使用一个std::vector
?当您想更改一个播放器时,只需使用vector::operator[]
或vector::at()从vector
获取它
,因为这两个函数都返回对放置在向量中的男孩的引用。我不知道如何使用std::vector,但我现在就用谷歌搜索它!谢谢你的想法!
void equipo:: mostrar_equipo(jugador& boy)//show team