C++ 声明类的数组

C++ 声明类的数组,c++,arrays,class,malloc,C++,Arrays,Class,Malloc,我在玩纸牌游戏。一开始我问的是球员的数量。玩家是一个阶级 我想知道如何制作一系列玩家 现在我有: Player *listofplayers = new Player[size]; 我得到一个错误,声明了未知数组大小 另一方面,下面的是非常好的 int *i = new int[size]; 你能解释一下两者的区别吗??正确的声明是什么 提前感谢。您需要删除括号: Player *listofplayers = new Player[size]; 就像克里斯所说的,既然你在使用C++,你应

我在玩纸牌游戏。一开始我问的是球员的数量。玩家是一个阶级

我想知道如何制作一系列玩家

现在我有:

Player *listofplayers = new Player[size];
我得到一个错误,声明了未知数组大小

另一方面,下面的是非常好的

int *i = new int[size];
你能解释一下两者的区别吗??正确的声明是什么


提前感谢。

您需要删除括号:

Player *listofplayers = new Player[size];

就像克里斯所说的,既然你在使用C++,你应该使用<代码> STD::vector < /C> >:

#include <vector>

std::vector<Player> listofplayer(size);
// or:
// std::vector<Player> listofplayer;
// listofplayer.resize(size);
#包括
std::向量列表层(大小);
//或:
//std::向量层;
//listofplayer.resize(大小);

不要这样做。使用
std::vector
。从技术上讲,
新播放器[size]()
将起作用并初始化它们。这与你的第一首曲子很接近,这就是区别。两者之间没有区别,除非
Player
类出现问题。它仍然不能解决问题。我的意思是消除妄想症。你能提供你所看到的确切错误吗?@fatrock92:是的,确实如此。它回答了你的问题:“我如何创建一个玩家数组”和“正确的声明是什么”。向量是个好主意,但我想更详细地学习指针。