26項 const_iterator、reverse_iterator、const_reverse_iteratorよりiteratorを優先的に使おう

const_iterator、reverse_iteratorconst_reverse_iteratorよりiteratorを優先的に使おう


insertとeraseは常にiteratorを必要とします。必要がない限り、わざわざconst_iteratorやreverse_iteratorconst_reverse_iteratorを使う必要はありません。

23項 連想コンテナをソート済みvectorに置き換えることを考えよう

連想コンテナをソート済みvectorに置き換えることを考えよう

ソート済みvectorが連想コンテナより優れている点は、メモリ使用量が少ないことと参照の空間的局所性が高いことです。
欠点は、常にvectorをソート済みにしておかなくてはならないということです。vectorのソートにはコストがかかります。


なので、探索が挿入や削除と混合されないときはソート済みvector、探索、挿入、削除が混合した処理を行うときは連想コンテナを使います。