设置数组的元素等于整个数组c ++

时间:2017-11-19 22:59:46

标签: c++ arrays

我正在制作一副宾果牌。卡片知道卡片中卡片的数量,卡片的大小以及卡片上显示的最大数量。

我想创建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'得到错误无效转换。如何声明我的deck阵列来存储这些卡阵列?

1 个答案:

答案 0 :(得分:0)

在C ++中,您可以通过嵌套向量处理数组数组,例如vector<vector<int>>的{​​{1}}。请注意deckArr实际上应该是deckArr的成员(而不是局部变量);稍微调整一下你的代码来展示嵌套向量的想法:

Deck