【发布时间】:2020-02-19 01:43:38
【问题描述】:
我正在使用std::set<T>,其中 T 是我自己的班级。有没有办法让一个集合始终按我的类的属性 A 排序,并且仍然保持里面的所有元素在我的类中的属性 B 方面是唯一的。
class T
{
public:
int A;
int B;
}
所以我需要我的类实例按 A 排序并按 B 唯一。任何 std::set 的替代方案,只要它是 STL 的一部分,也可以接受。
【问题讨论】:
-
你可以继承 std::set
的子类吗? -
@Jeffrey 你是对的。至于你的问题,如果我已经插入了 elemetn A=4 和 B=2,如果我尝试添加 A=3 B=2 它不应该被添加。但我也永远不会传递这样的意见。
-
@JosephLarson 我认为它应该可以工作。
-
如果 2,3 排在 2,4 之前,或者如果首先添加(或其他一些逻辑)必须 2,4 排在第一位,您关心吗?
-
@user4581301 我不知道。
标签: c++ algorithm sorting stl set