最近C++を書く機会が多いのだが、いかんせん自分の知識は2014年でぱったりと止まっている。しかも2014年当時、自分はまだまだ未熟で、C++11やらC++14なんかの機能についてはまったくの無知であった。そんなわけで、C++のモダンな機能を学びがてら、タイトルにあるようにstd::vectorに値を設定する最速の方法は何かということを調べてみようと思う。 前提として、vectorのテンプレート引数は、ぼちぼちの大きさをもつ自作クラス型とした。また、vectorのメモリ確保動作が性能ネックとならないように、初めにvectorのメモリをreserveしてから計測を行った。つまり、初めに以下のようなコードを書いておく。 std::vector<LargeObject> lov; // 自作のぼちぼちの大きさのクラスをテンプレート引数に設定 const int NUM_LOOP = 300000