int *x = new int[5]();
有了上述的心態,應該如何爲二維數組編寫代碼 - int[][]
?多維數組和C++中的指針?
int **x = new int[5][5]() //cannot convert from 'int (*)[5]' to 'int **'
在第一條語句,我可以使用:
x[0]= 1;
但第二個更復雜,我無法弄清楚。 我應該使用類似:
x[0][1] = 1;
或者,計算真正的位置,然後獲得的價值 第四行和列1
x[4*5+1] = 1;
你應該*不*做手工的內存管理。不僅因爲您必須記住刪除所有內容,而且因爲您可能會忘記或拋出異常而不安全,因此您的代碼很麻煩。使用'std :: vector',它們可以嵌套。 – GManNickG 2010-07-29 23:00:53