通过引用c ++传递数组

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了通过引用c ++传递数组相关的知识,希望对你有一定的参考价值。

我正在使用C ++。在这里,我创建了两个名为“score”和“dice”的数组,并通过引用传递给一个名为print_scores的函数

 int create_arrays(int& numberPlayers) {
//Create score array and populate
int* scores = NULL;
scores = new int[numberPlayers];
for (int i=0; i<numberPlayers; i++) {
    scores[i] = 0;
}
//Create dice array and populate
int* dice[6] = {0,0,0,0,0,0};

print_scores(scores, dice);
}

这里我声明了print_scores函数:int print_scores(int&scores,int&dice);

在这里我定义它:

int print_scores(int& scores, int& dice) {

}

但它似乎没有用。我需要能够在print_scores中传递然后修改这些数组。

答案

您可以考虑使用int *作为函数参数:

int dice[6] = { 1,2,3,4,5,6};

int get(int* dice,int index)
{
    return dice[index];
}

int main()
{
    cout << get(dice, 5) <<endl;
    return 0;
}

以上是关于通过引用c ++传递数组的主要内容,如果未能解决你的问题,请参考以下文章

C++ 通过引用传递数组

C语言有引用传递吗

unity3d导入c ++ dll,用于通过引用方法传递

通过引用c ++传递数组

C ++通过引用其他类传递二维数组

通过引用将字符串数组传递给 C 函数