在Vector中 做erase操作就是按照下面的步驟來(lái)做的:
copy()
destory();
在list容器中 erase操作
destory()
deallocate()
Vector使用從某種意義上來(lái)說(shuō)內(nèi)存空間只是有增無(wú)減【如果不通過(guò)某種技術(shù)的話】 而list就像正常操作一樣 該釋放就釋放 不改釋放就不釋放
Vector縮容的方法:
調(diào)用swap 這是真正釋放內(nèi)存的方法 a.swap(b)的方法來(lái)釋放a以前的內(nèi)存。 swap也是有動(dòng)作開(kāi)銷的 1個(gè)拷貝構(gòu)造 加上2個(gè)復(fù)制操作符 不容小覷。在構(gòu)造的時(shí)候要先申請(qǐng)一個(gè)和a一樣的內(nèi)存塊 這樣需要double的量 比較麻煩
浙公網(wǎng)安備 33010602011771號(hào)