【发布时间】:2013-02-04 18:04:56
【问题描述】:
我的一套:
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);
}
这可能会导致分段错误,或者这将始终有效?
【问题讨论】:
-
Iterator invalidation rules 的可能重复项
标签: c++