C++ 将2D数组传递给函数,其大小在运行时确定?
我们能否将二维函数传递给一个函数,该函数的行和列将在运行时给定C++ 将2D数组传递给函数,其大小在运行时确定?,c++,arrays,function,multidimensional-array,C++,Arrays,Function,Multidimensional Array,我们能否将二维函数传递给一个函数,该函数的行和列将在运行时给定 void fun(int [][]); //Function declaration int rows , cols; //Global declaration int main(){ cin>>rows>>cols; int arr[rows][cols]; //reading array elements from user fun(arr); //
void fun(int [][]); //Function declaration
int rows , cols; //Global declaration
int main(){
cin>>rows>>cols;
int arr[rows][cols];
//reading array elements from user
fun(arr); //Function call
return 0;
}
void fun(int arr[][cols]) //Function definition
{
...
}
这可能吗?或者还有其他方法吗?。坦率地说,在一个地方使用VLA有点奇怪,但是问这个问题。不管怎样,“可能吗?”你试过了吗?当你这么做的时候发生了什么?拼写是“std::vector”。看到没有正确解释就宣传VLA的教程造成了多大的伤害,我很难过。编译器特定的扩展不适用于第1天,但是
std::vector
这是否应该回答您的问题?