我正在使用Visual 2015 C++学习++
我在学习,我不能再经历一些事情了。也许你可以给我一个更好的见解。
我学到了一些关于类、结构、数组和函数的东西。
我想要创建一个使用多个播放器的程序,但它可以从2-4 (例如:
class Player{
public:
Player(){
hp=5;
mana=10;
alive=false;
};
int hp;
int mana;
bool alive;
};
int _tmain(int argc, _TCHAR* argv[])
{
// data here //
retry:
cin >> numberofPlayers;
if (numberofPlayers < 2 || numberofPlayers>4)
{
cout << "That's Impossible! Don't mock me!" << endl;
goto retry;
}
else
{
cout << "Great!" << endl;
}在此之后,我想要创建一个向量指针到对象,它将存储不同的玩家变量。
例如:
在这里,我的问题开始:)
Player* pointerplayer = new Player();
vector<Player*> vectorPlayer;
Player* pointerplayer = new Player();
for (int i = 0; i < numberofPlayers; i++)
{
vectorPlayer.push_back(new Player());
cout << vectorPlayer[i] << endl;
}我的问题是,当我试图看到输出时,我猜指针的地址。
01639B40
01643F98
01643C80我希望输出是这样的:
1
2
3我意识到我并没有这么做,但是有东西在逃避着我,我无法清楚地看到它。
因为我想在2-4个玩家之间创建,这是基于用户的输入。对于每个播放器,创建一个包含每个播放器的所有变量的Player()。和输出的(1,2,3,4)取决于数量。
发布于 2017-04-18 20:03:56
将cout语句更改为:
cout << (i + 1) << endl;https://stackoverflow.com/questions/43480401
复制相似问题