【发布时间】:2018-05-03 03:15:30
【问题描述】:
我正在制作一副宾果卡。牌组知道牌组中牌的数量、牌的大小以及牌上出现的最大张数。
我想创建 n 个由唯一随机整数组成的数组(卡片),然后将这些数组中的每一个添加到另一个数组(卡片组)的每个元素中。所以,一个数组数组。
例如。
card1 = {1, 2, 5};
card2 = {3, 7, 2};
deck = {card1, card2};
到目前为止,这是我的代码:
Deck::Deck(int cardSize, int cardCount, int numberMax){
int randInt;
int size = cardSize * cardSize;
int deckArr[cardCount];
for(int t = 0; t < cardCount; t++){
int arr[size];
for(int i = 0; i < size; i++){
randInt = computeRandInt(numberMax, cardSize);
if(arr[i] == 0) arr[i] = randInt;
else if (randInt != arr[i-1]) arr[i] = randInt;
}
deckArr[t] = arr;
}
}
我收到从“int*”到“int”的错误无效转换。如何声明我的牌组数组来存储这些牌组?
【问题讨论】:
-
int deckArr[cardCount]--int arr[size];-- 这不是有效的 C++。 C++ 中的数组必须使用常量来表示条目数,而不是变量。请改用std::vector<int>。