私のセット:
std::set<Object> objects;
オブジェクトを見つけて参照として返し、存在しない場合は挿入します。
const Object& get(params...){
Object obj(params...);
std::set<Object>::const_iterator i = objects.find(obj);
if(i != objects.end())
return *i;
objects.insert(obj);
return * objects.find(obj);
}
これにより、セグメンテーション違反が発生する可能性がありますか、それとも常に機能しますか?