std::set と std::multiset
#include <iostream> #include <set> #include <pstade/oven/identities.hpp> #include <pstade/oven/io.hpp> int main(){ using pstade::oven::identities; std::set<std::string> strings; strings.insert("crossing"); strings.insert("days"); strings.insert("black"); strings.insert("very"); strings.insert("pie"); std::cout << (strings|identities) << std::endl; std::multiset<int> values; for( int i = 0 ; i < 10 ; i++ ){ values.insert( rand()%10 ); } std::cout << (values|identities) << std::endl; return 0; }
[出力]
{black,crossing,days,pie,very} {0,1,2,4,4,4,7,8,8,9}
std::set と std::multiset は、ソートを行ないながらデータを追加するコンテナです。
std::set は、データの重複を許さず、std::multiset は、データの重複を許します。
今まで使ったことがなかったので覚え書き。