gpt4 book ai didi

c++ - 一个键上的 equal_range,boost multi_index_container composite_key 中另一个键的下限/上限

转载 作者:搜寻专家 更新时间:2023-10-31 01:54:17 25 4
gpt4 key购买 nike

假设我有以下内容:

struct Person
{
std::string mName;
Birthday mBirthday;
};

using namespace boost::mult_index;
typedef multi_index_container<
Person,
ordered_non_unique<
composite_key<
Person,
member<Person, std::string, &Person::mName>,
member<Person, Birthday, &Person::mBirthday>
> // composite_key
> // ordered_non-unique
> PersonContainer; // mult_index_container

PersonContainer personContainer;

...

std::pair<PersonContainer::iterator, PersonContainer::iterator> similarPeople
= personContainer.equal_range(boost::make_tuple("Bob","01/15/65"));

这会给我一个迭代器范围,其中每个迭代器都指向出生于“01/15/65”的名为“Bob”的人。

如果我想要一个迭代器范围,为我提供容器中名为“Bob”但出生“01/01/65”和“01/31/65”之间的所有人怎么办?这实际上是 'Bob' 的 equal_range,但生日的下限和上限。这可能吗?如果是,请解释如何?

谢谢!

最佳答案

你想要的范围是 [lower_bound(make_tuple("Bob","01/01/65")),upper_bound(make_tuple("Bob","01/31/65"))).

关于c++ - 一个键上的 equal_range,boost multi_index_container composite_key 中另一个键的下限/上限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9908924/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com