我一直在試圖傳遞一個未知大小的多維數組,給一個函數,到目前爲止有沒有運氣,數組聲明時,它的尺寸是變量:將多維數組傳遞給函數(C++)?
double a[b][b];
據正如我所知道的,當我聲明函數時,我需要給出b的值,a可能是未知的。我試圖將b聲明爲全局變量,但它表示它必須是常量。
即:
int b;
double myfunction(array[][b])
{
}
int main()
{
int a;
double c;
double myarray[a][b];
c=myfunction(myarray);
return 0;
}
有沒有辦法得到這個工作?
不是很漂亮,但你不只是傳入第一個元素的指針? – Chris 2012-07-25 17:33:09
'std :: vector'讓生活變得如此簡單。 – chris 2012-07-25 17:34:02
如果尺寸是可變的,則使用'std :: vector'或'boost :: multiarray'。 – 2012-07-25 17:34:15