0

我正在使用一个对象作为多图的键。该对象是我创建的自定义日期类。我只是想知道是否可以将在对象中找到的变量用于 equal_range()?

这是在我的自定义日期对象中检查月份变量。

就是这样(伪代码)。

int january = 1;
foundValues = myMultimap.equal_range(january);

for (it=foundValues.first; it!=foundValues.second; ++it)
{
  cout << " " << (*it).second;
  cout << endl;
}

这是否会遍历每个键对象并检查该对象内的变量是否等于“一月”,然后返回与键配对的值?

谢谢你。

4

1 回答 1

0

关联容器的搜索成员仅对键起作用。它们的存在是因为它们利用了容器的内部结构,这保证了及时找到值(或它们的缺失) (容器中元素的数量在O(log(n))哪里)。n

如果要查找与条件匹配的序列中的所有元素,则可能要std::copy_if()与合适的谓词一起使用。

于 2012-11-25T18:37:35.297 回答