c++

c++二维数组传参的方法是什么

小亿
105
2024-01-09 14:24:41
栏目: 编程语言

C++中传递二维数组的方法可以有多种。下面是几种常见的方法:

  1. 使用指针参数:可以将二维数组作为指针传递给函数。函数的参数类型应该是指向指针的指针,形式为int**。示例代码如下:
void function(int** arr, int rows, int cols) {
    // 使用arr访问二维数组的元素
}

int main() {
    int rows = 3;
    int cols = 4;
    int** arr = new int*[rows];
    for (int i = 0; i < rows; ++i) {
        arr[i] = new int[cols];
    }
    // 初始化二维数组的值
    
    function(arr, rows, cols);
    
    // 释放内存
    for (int i = 0; i < rows; ++i) {
        delete[] arr[i];
    }
    delete[] arr;
    
    return 0;
}
  1. 使用数组引用参数:可以将二维数组作为数组引用传递给函数。函数的参数类型应该是表示二维数组的引用,形式为int (&arr)[rows][cols]。示例代码如下:
void function(int (&arr)[3][4]) {
    // 使用arr访问二维数组的元素
}

int main() {
    int arr[3][4];
    // 初始化二维数组的值

    function(arr);
    
    return 0;
}
  1. 使用模板参数:可以使用模板参数来传递二维数组。示例代码如下:
template<size_t rows, size_t cols>
void function(int (&arr)[rows][cols]) {
    // 使用arr访问二维数组的元素
}

int main() {
    int arr[3][4];
    // 初始化二维数组的值

    function(arr);
    
    return 0;
}

这些方法都可以用来传递二维数组给函数,具体使用哪种方法取决于你的需求和偏好。

0
看了该问题的人还看了