Re: [程式] 記憶體的問題
看板GameDesign (遊戲設計)作者moonjustin (快點放長假吧@@)時間18年前 (2007/08/20 12:03)推噓0(0推 0噓 0→)留言0則, 0人參與討論串3/7 (看更多)
※ 引述《littleshan (我要加入劍道社!)》之銘言:
: ※ 引述《moonjustin (快點放長假吧@@)》之銘言:
: : 大家好,
: : 想請問一下,
: : 當寫了一個Class,
: : 裡面有一個member function是每個frame都會重複呼叫
: : 那麼這時候裡面用到的變數是應該:
: : 1.宣告成local variable
: : 缺點:會重複存取記憶體,感覺很花時間。
: : 2.宣告成data member
: : 缺點:一但宣告後會一直佔據記憶體,變數一多會不會把記憶體都佔光了?
: : 謝謝各位。
: 要用 local variable 或是 member variable 是取決於 lifetime
: 如果你希望這個變數的值可以保留到下個 frame
: 就應該用 member variable
: 否則應該用 local variable
: 至於你說的缺點...使用 local variable 時
: 若這些變數是 class 而且有 ctor/dtor
: 那每次進出函式都會呼叫一次
: 效率上會比使用 member variable 還要差
: 不過如果是 native type 就沒什麼差別了
順便問一下,
宣告local變數會造成記憶體破碎的問題嗎?
另,如果現在跟系統要了一塊記憶體,
之後先歸還了一部份記憶體,
那麼系統會知道現在這塊free的記憶體在哪裡嗎?
謝謝。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.220.110.100
討論串 (同標題文章)
GameDesign 近期熱門文章
PTT遊戲區 即時熱門文章
-7
13