gpt4 book ai didi

c++ - 一组元组 (i, v) 使得所有元组具有不同的 i 值

转载 作者:行者123 更新时间:2023-11-27 23:08:04 25 4
gpt4 key购买 nike

我正在尝试构建一组元组 (i, v),其中 i 是一个 intv 是一个 double。该集合不能包含具有相同 i 值的两个元组。

为此,我认为我应该使用 std:tuplestd::set。像这样的东西:

#include <tuple>
#include <set>
using namespace std;

set<tuple<int, double>> mySet;

std::set 类允许我指定一个比较器,我认为我应该使用它来避免具有相同 i 值的不同元组,但我不知道怎么做??

最佳答案

std::tuple已经提供了 operator<可用于比较,但它比较元组的所有 元素。您只需提供一个比较器来比较元组的第一个元素并忽略第二个元素。

struct comparator
{
bool operator()(const tuple<int, double> & lhs, const tuple<int, double> & rhs)
{
return get<0>(lhs) < get<0>(rhs);
}
};

关于c++ - 一组元组 (i, v) 使得所有元组具有不同的 i 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21943843/

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