2

我正在寻找 C++ 中的关联容器,而不是要求它的元素是默认可构造的,而是会在请求未找到的键的情况下引发异常 - 编辑:在适当的函数中,显然不是全部需要默认构造。这基本上是因为我用一个打电话回家并告诉主对象分配了多少内存,因此需要知道“家”在哪里的分配器替换标准分配器。

4

2 回答 2

2

std::map 最简单的答案是不使用operator[]. 用于insert创建新元素并find定位现有元素。如果不使用operator[]包含的类型不需要是默认可构造的,并且如果find没有找到对象,则可以决定抛出异常。

于 2010-11-26T15:19:38.960 回答
1

您在寻找 的成员atboost::unordered_map?这些不在std::tr1::unordered_mapAFAICT 中。

于 2010-11-26T14:50:00.213 回答