int main(){
vector<Monster*> Monsters;
vector<Monster*>::iterator iter;
Monsters.push_back(new Monster("Slim", 100));
Monsters.push_back(new Monster("Archer", 200));
Monsters.push_back(new Monster("Solider", 300));
Monsters.push_back(new Monster("Tank", 400));
Monsters.push_back(new Monster("Skeleton",500));
for (iter = Monsters.begin(); iter < Monsters.end(); iter++){
cout << *iter << endl;
}
system("pause");
return 0;
}
大家好,所以我做了一個叫怪物類,它有AA構造允許兩個變量,一個字符串和INT(怪物名稱,怪物血) ,現在我想創建5個具有不同名稱和健康的怪物,我把它們放在一個向量中並存儲它,但現在我想使用一個迭代器來獲取存儲在該向量中的所有信息,但是我得到它的內存地址,我已經使用了「* iter」作爲解引用程序,我做了什麼錯了?對不起,我不得不提到我也有2個功能在怪物類getname和gethealth。它返回健康和名字;Vector和迭代器,打印出值,而不是內存地址
OO我忘了括號超載 '< <' 操作,非常感謝你。在我試過* iter-> getName()之前,它不會編譯。但如果我將它更改爲(* iter) - > getName(),這將工作,再次感謝您的幫助。 – Ggbeastboi