const是在編譯器編譯期間還是在執行階段分配內存的? 答案:const是在編譯器編譯階段分配內存的。 也就是說編譯器掃描到const變量的時候就分配內存了(const變量分配內存條件參考筆記十七)。 通過程序驗證:
圖片1.png (18.87 KB, 下載次數: 84)
下載附件
2018-3-8 22:45 上傳
圖片2.png (18.8 KB, 下載次數: 105)
下載附件
2018-3-8 22:45 上傳
我們知道變量a、b、c三個變量應該是連續壓棧,我們打印出它們的地址,看一下b的地址是不是處于a和c之間,在a和c之間就是它們一塊分配內存了,通過筆記十七已經知道對const變量取地址時才分配內存。 【C++】筆記系列均為原創,轉載請注明轉自微號:Lightspeed-Tech 或 AutoCode 更多精彩資料,請關注!
|