我是C++新手,很抱歉,如果之前已經詢問過,但我找不到它。 爲什麼我們使用指針而不是簡單地創建一個特定大小的數組?爲什麼我們使用指針而不是簡單地創建一個特定大小的數組?
int** ary = new int*[rowCount];
for(int i = 0; i < rowCount; ++i)
ary[i] = new int[colCount];
和
int ary[rowCount][colCount];
什麼是兩者之間的區別? 我知道第一個在堆內存上工作,第二個在堆棧上工作,但爲什麼大多數人使用第一種方法?
該語言的效率/能力使您可以使用內存位置而不是巨大的數據對象...... –
因爲您是C++的新手,您肯定會找到有關專業人員(和陷阱)的更多信息,通過記憶來指代事物的位置...... –
試想一下。你要在桌子上放一堆塊。桌子上有一大堆垃圾。你是否寧願:1)把所有的塊都粘在一起,然後必須在桌子上四處移動,以便它適合......或者2)將塊放在桌子上,然後記住塊在哪裏。在這兩種情況下,你對任何一個街區都一無所知,但你知道它們都在哪裏。處理問題時的一個問題是,當你處理完塊時,在這兩種情況下你都想記住刪除所有的塊。 – Fallenreaper