作者personhuang (Person)
看板EE_DSnP
標題[問題] memory size
時間Sat Dec 16 03:06:46 2006
請問一下 我在測試do.mtest檔時
在測到 mtn 5 -a 3時
在一塊memBlock不夠要new新的時
我的"New MemBlock... " << _activeBlock
位址是New MemBlock... 0x9953cd0
而老師檔案是New MemBlock... 0x8db7ce0
這邊我用的是_activeBlock=new MemBlock<T>(_activeBlock,_blockSize)
不知道為何會差16
而第二塊不夠時 在NEW一塊 可是仍然差16
表示只有第一塊有差 後來差距不變
請問是為什麼 那個16 是我少去哪裡?
謝謝
ps 詳細位址
我的 reference program
mtest> mtn 5 -a 3
Calling allocArr...(40) Calling allocArr...(40)
Calling MemMgr::getMem...(40) Calling MemMgr::getMem...(40)
Memory acquired... 0x9953c54 Memory acquired... 0x8db7c54
Calling allocArr...(40) Calling allocArr...(40)
Calling MemMgr::getMem...(40) Calling MemMgr::getMem...(40)
Recycling 0x9953c7c to (1) Recycling 0x8db7c7c to (1)
*New MemBlock... 0x9953cd0 * New MemBlock... 0x8db7ce0
Memory acquired... 0x9953ce8 Memory acquired... 0x8db7cf8
Calling allocArr...(40) Calling allocArr...(40)
Calling MemMgr::getMem...(40) Calling MemMgr::getMem...(40)
Memory acquired... 0x9953d10 Memory acquired... 0x8db7d20
Calling allocArr...(40) Calling allocArr...(40)
Calling MemMgr::getMem...(40) Calling MemMgr::getMem...(40)
Recycling 0x9953d38 to (1) Recycling 0x8db7d48 to (1)
New MemBlock... 0x9953d50 New MemBlock... 0x8db7d60
Memory acquired... 0x9953d68 Memory acquired... 0x8db7d78
Calling allocArr...(40) Calling allocArr...(40)
Calling MemMgr::getMem...(40) Calling MemMgr::getMem...(40)
Memory acquired... 0x9953d90 Memory acquired... 0x8db7da0
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.251.53
※ 編輯: personhuang 來自: 140.112.251.53 (12/16 08:03)
推 ric2k1:那表示你在 new 第一塊 MemBlock 之前在某處多 new 了 12/16 08:39
推 ric2k1:16 Bytes. 但那也不表示有錯, 畢竟每個人的程式寫的不一樣 12/16 08:40
推 ric2k1:除非將兩個 code 拿來比對, 否則很難知道是什麼回事 12/16 08:41
推 personhuang:應該是老師的多new了16 12/16 13:32