讀書(shū)筆記《effective stl》item5: 區(qū)間成員函數(shù)優(yōu)先于與之對(duì)應(yīng)的單元素成員函數(shù)
認(rèn)知有限,如有理解不當(dāng),還請(qǐng)指正。
作者認(rèn)為優(yōu)先使用區(qū)間成員函數(shù)而不是與之對(duì)應(yīng)的單元素成員函數(shù)原因有3:
區(qū)間成員函數(shù)寫(xiě)起來(lái)更容易
更能清楚地表達(dá)代碼意圖(更有益于后期維護(hù))
代碼執(zhí)行起來(lái)更有效率
上述代碼的輸出結(jié)果為:
使v1的內(nèi)容和v2的后半部分相同的操作可以為:?
使用顯示循環(huán):?
runtime is 10665
或 使用copy以避免循環(huán):?
runtime is 6553
或 使用利用區(qū)間的insert版本,相比于copy更清晰表明了 有數(shù)據(jù)插入v1的操作:?
runtime is 196
筆者建議使用區(qū)間成員函數(shù)的操作:?
runtime is 172
由此可見(jiàn),從代碼執(zhí)行效率上看, T(loop) >?T(copy) >?T(insert) >?T(assign)
標(biāo)簽: