マガジンのカバー画像

技術メモ

72
運営しているクリエイター

#コンテナ

n要素のstd::vectorを初期化する

すべてを同じ要素で初期化するなら vector のコンストラクターでよい。
そうではなく、異なる要素で初期化したいなら generate_n がつかえる。
たとえば 0 から n-1 の値で埋めたいなら、こうする:

auto&& vector = std::vector<int>();vector.reserve(n);int i = 0;std::generate_n(std::back_in

もっとみる

コンテナ内の要素を定数倍する(C++)

std::vector に格納した要素を、一律定数倍するのってどう書けばよいのだったっけ?

すぐにおもいだせず悔しかったのでメモを残す。いわゆる map 関数をつかうというのが答えでした。(C++ なので map した結果を直接コンテナに書き戻せる)