存储对象列表的最佳标准类?

时间:2013-10-23 13:56:01

标签: c++ list boost std

什么是表示未编制索引列表的类,其中包括检查对象是否在列表中?

list<char> list;
list.add("obj");
if(list.inlist("obj")) doStuff();
list.remove("obj");

优选地,课程必须在标准或升级库中,但如果您知道任何其他方式仍然可以回答,因为它可能是有趣的。

我知道有一个std::list类,但它没有我正在寻找的功能。 (检查对象是否在列表中)

3 个答案:

答案 0 :(得分:6)

这是std::unordered_set的用例。这可以跟踪重复项,而无需保持订购的开销。

答案 1 :(得分:5)

如果您只需要查找对象,则可以使用std::setstd::multiset

如果选择C ++ 11,您可以使用他们的unordered counterparts

答案 2 :(得分:0)

您可以使用std::find在容器内查找对象。