成都游戲Coder,記錄游戲開發(fā)過(guò)程的筆記和心得!
pool
根據(jù) Boost 文檔所述,當(dāng)您分配和釋放許多小型對(duì)象時(shí),建議使用池。使用池的另一個(gè)不太明顯的優(yōu)點(diǎn)在于,作為程序員,您不必?fù)?dān)心內(nèi)存泄露:內(nèi)存由 Boost 庫(kù)在內(nèi)部自動(dòng)進(jìn)行管理。要使用 pool 庫(kù),您不必在鏈接時(shí)提供特定的庫(kù)——單憑頭文件就足以完成鏈接了。 有多個(gè)接口對(duì) pool 庫(kù)可用: 關(guān)于Boost pool可以閱讀 http://www.ibm.com/developerworks/cn/aix/library/au-util_boost_lib/
pool可以閱讀 http://www.ibm.com/developerworks/cn/aix/library/au-util_boost_lib/
posted on 2009-03-29 22:28 expter 閱讀(2875) 評(píng)論(7) 編輯 收藏 引用 所屬分類: 其他學(xué)習(xí)筆記 、工作筆記 、生活筆記
不錯(cuò)哦,你已經(jīng)工作啦,主要具體做些什么工作呀?你的方向是什么呀? 我走游戲編程這條路 呵呵 現(xiàn)在還沒(méi)什么工作經(jīng)驗(yàn)?zāi)?nbsp; 回復(fù) 更多評(píng)論
第一個(gè)的好拗口 回復(fù) 更多評(píng)論
如果我沒(méi)記錯(cuò)的話,map.erase(it)后,it移動(dòng)的結(jié)果是未定義的。有篇論文還專門討論了這個(gè)問(wèn)題。所以這個(gè)用法在不同的stl實(shí)現(xiàn)上會(huì)出現(xiàn)不同的結(jié)果, 最好不要這樣用。但vector是可以的。 回復(fù) 更多評(píng)論
>>>如果不需要一個(gè)類的對(duì)象不能被隱式的轉(zhuǎn)換 似乎多了個(gè)不字吧 >>>memcpy(*this,_t,sizeof(_t)); 能這么做嗎 回復(fù) 更多評(píng)論
@路過(guò)的 寫錯(cuò)了, 應(yīng)該是 memcpy(this,&t,sizeof(t)); 謝謝 回復(fù) 更多評(píng)論
ding yi xia 回復(fù) 更多評(píng)論
要不讓編譯器提供=操作符 直接申明成private而且不去實(shí)現(xiàn),這就行了 要?jiǎng)h除容器內(nèi)滿足特定條件的元素 algorithm中的remove_if就行了 簡(jiǎn)單明了,還得注意如果容器里是指針刪除時(shí)的情況。 5.關(guān)于重載操作符,本周看到同事們?cè)谟懻撘粋€(gè)關(guān)于結(jié)構(gòu)體的代碼 實(shí)例如下: 1struct Test 2{ 3 // 4 5 Test & operator = (const Test &_t) 6 { 7 //關(guān)于此處是否需要增加一個(gè) _t與*this的判斷, 8 memcpy(this,&t,sizeof(t)); 9 return *this; 10 } 11 12 // 13}; 因?yàn)樾屎桶踩膯?wèn)題,是否需要增加判斷的代碼,比如 if(_t == *this) { return *this; } 不管你是不是對(duì)this判斷,這樣做都是很危險(xiǎn)的,如果結(jié)構(gòu)體中有一個(gè)類,類中有虛函數(shù),不能保證sizeof(t)就是你預(yù)想的結(jié)果 回復(fù) 更多評(píng)論
Powered by: C++博客 Copyright © expter