我試圖創建C++中的二維陣列使用雙指針方法。但是,當我初始化變量我總是得到該數組的大小爲8起初,我嘗試這樣做:初始化C++數組的指針,得到大小爲8
double** sobel_x;
,並得到了大小爲8,然後當我嘗試這樣做:
double** sobel_x;
sobel_x = new int*[3];
for(int i = 0; i < sizeof(sobel_x); i++) {
sobel_x[i] = new int[3];
}
有人可以先向我解釋爲什麼數組初始化爲8而第二個如何改變這個大小?
'新int' - >'新double'? – P0W
你如何檢查尺寸?您可能會看到指針的大小,而不是數組的大小 - 您只通過存儲指針而丟棄數組的大小。 –
@PW謝謝!我什至沒有注意到我這樣做 – azrosen92