【发布时间】:2020-01-22 07:29:15
【问题描述】:
我无法使用 C++ Set 来使用 Class 或 Struct。我在互联网和 stackoverflow 上搜索,但找不到示例。 传统上,由于我的调用,似乎不可能找到除 int 和 string 样本以外的样本。希望有朋友帮忙。
感谢回复的朋友。
using namespace std;
struct DemoData
{
int id;
string Pairs;
double Price;
};
int main()
{
DemoData myDemoDara ;
myDemoDara.id = 1; myDemoDara.Pairs = "GBPJPY"; myDemoDara.Price = 9.34;
set<DemoData> setVeri ; //**It gives errors during compilation.**
setVeri.insert(listem);
return 0;
}
【问题讨论】:
-
询问构建错误时,始终将编译器的完整错误输出复制粘贴(作为文本!)到问题本身。
-
至于我猜的问题是,你的结构没有
operator<函数。std::set是 ordered(即元素已排序),您需要一个小于比较运算符(operator<重载)来比较结构的排序。
标签: c++ linked-list set generic-list generic-collections