如何在头文件中定义结构的元素? 我在C++上是新的,所以抬头看看。 我想做一个21点游戏,有一个包含两个元素的结构,名字和牌的点数。我还有一个与第一个结构类型相同的结构。因此,现在我的第一个问题是,如何才能比我在下面做的更好地定义名称和点。第二个问题是如何从结构数组中随机获得卡片。我希望任何人都能理解我的问题:)

如何在头文件中定义结构的元素? 我在C++上是新的,所以抬头看看。 我想做一个21点游戏,有一个包含两个元素的结构,名字和牌的点数。我还有一个与第一个结构类型相同的结构。因此,现在我的第一个问题是,如何才能比我在下面做的更好地定义名称和点。第二个问题是如何从结构数组中随机获得卡片。我希望任何人都能理解我的问题:),c++,arrays,struct,C++,Arrays,Struct,在cpp中的函数中定义…更好的方法 cardIn.zwei.name = "Zwei"; cardIn.zwei.points = 2; cardIn.zwei.name = "Drei"; cardIn.zwei.points = 3; cardIn.zwei.name = "Vier"; cardIn.zwei.points = 4; cardIn.zwei.name = "Fuenf"; cardIn.zwei.points = 5; cardIn.zwei.name = "Sechs";

在cpp中的函数中定义…更好的方法

cardIn.zwei.name = "Zwei";
cardIn.zwei.points = 2;
cardIn.zwei.name = "Drei";
cardIn.zwei.points = 3;
cardIn.zwei.name = "Vier";
cardIn.zwei.points = 4;
cardIn.zwei.name = "Fuenf";
cardIn.zwei.points = 5;
cardIn.zwei.name = "Sechs";
cardIn.zwei.points = 6;
cardIn.zwei.name = "Sieben";
cardIn.zwei.points = 7;
cardIn.zwei.name = "Acht";
cardIn.zwei.points = 8;
cardIn.zwei.name = "Neun";
cardIn.zwei.points = 9;

您的卡在我看来更像一个名称空间,但两者都可以这样工作:

namespace cards {
    CardInfos zwei{"zwei", 2};
    CardInfos drei;//and so on
    CardInfos vier;
    CardInfos fuenf;
    CardInfos sechs;
    CardInfos sieben;
    CardInfos acht;
    CardInfos neun;
    CardInfos Bube;
    CardInfos Königin;
    CardInfos König;
    CardInfos Ass;
};

cardIn.zwei.name=“Drei”;cardIn.zwei.points=3和下面的内容毫无意义。您似乎对类成员是什么有一个基本的误解。类型
cards
是一个类,如果您创建了它的实例,那么每个实例都将有成员(
zwei
drei
…)。我看不出这有什么用。如果您想将卡信息存储在某个地方,您最好使用
std::array
。请试着澄清一下,
cards
应该对你有好处的是什么,那就是獾。不过,如果你是在头球中做这件事,你将需要一些连环动作。(
inline
最近应该这么做)
namespace cards {
    CardInfos zwei{"zwei", 2};
    CardInfos drei;//and so on
    CardInfos vier;
    CardInfos fuenf;
    CardInfos sechs;
    CardInfos sieben;
    CardInfos acht;
    CardInfos neun;
    CardInfos Bube;
    CardInfos Königin;
    CardInfos König;
    CardInfos Ass;
};