serialization - その他

その他残っている部分。これでだいたい全部出揃ったかな。

minmax

C++の標準アルゴリズムに std::min_element, std::max_element があるが、これらは
  • 同値なものがあったときに常に最初の要素を返す
  • min,maxのそれぞれを求めようとすると 2回走査して処理が無駄
といった制約がある。

ってことで、1つ目の制約の補足として以下が用意された
  • first_min_element
  • last_min_element
  • first_max_element
  • last_max_element
これらの使い方は std::min_element/std::max_elementと同じ。
first_min_element, first_max_elementは std::min_element/std::max_elementと同じ機能だが、対称性のために存在する模様。

さらに2つ目の制約への補足として以下も用意された。
  • first_min_first_max_element
  • first_min_last_max_element
  • last_min_first_max_element
  • last_min_last_max_element

こちらは返り値として std::pair<Iterator, Iterator> を返す。

range

Rangeライブラリ。
その名の通り、要素のシーケンスの範囲を扱うライブラリで、 なんとなく地味な感じがあるけど、コレ面白い。

assignment - operator+=, operator(), repeat

Assignment ライブラリの続き。 list_of, map_list_of の他にいつくか関数がある。

multi_index_container - 基本

multi_index_container 続き。
名前と年齢を持った構造体Personを multi_index_containerを使って、名前と年齢それぞれをキーにして検索ができるようにしてみる。(ちなみに名前はユニークであるとする)

<< 2/4 >>