std::alloc具体细节
生活随笔
收集整理的這篇文章主要介紹了
std::alloc具体细节
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
G2.9 std::alloc的缺點(diǎn):
1、在alloc::deallocate中沒有將拿到的內(nèi)存資源還給操作系統(tǒng),在多任務(wù)中將占用很大資源
2、alloc::deallocate函數(shù)沒有檢查傳入的p指針的有效性。在這里它默認(rèn)p為alloc::allocate取得。
如果p并非alloc::allocate取得,該函數(shù)仍然可以將其并入回收,這不好。并且如果p所指的大小不是8的倍數(shù)的時(shí)候,會(huì)帶來災(zāi)難。
一些語法細(xì)節(jié)
1、比較語句 == 左邊寫值,右邊寫變量,防止把==寫成=編譯能通過。
如:
2、如果使用指針的指針,并且寫成這樣:
obj* *p1, *p2; //它的結(jié)果實(shí)際上是這樣 //obj **p1, *p2; //也就是obj** p1; obj* p2; //這樣與我們的實(shí)際預(yù)期不符3、關(guān)于new_handler函數(shù)的定義需寫成這樣:
typedef void (*new_handler)();new_handler set_new_handler(new_handler p) throw(); // 該案例如下 ||| typedef void (*H) (); static H set_malloc_handler (H f);總結(jié)
以上是生活随笔為你收集整理的std::alloc具体细节的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 红冠多少钱啊?
- 下一篇: 从源码角度剖析VC6下的内存分配与切割的