set容器中放入结构体时需要重载运算符<
今天在做百度之星热身赛时候 发现我的Set容器不行了 由于放入的是结构体 总是报错 找了n久的错误啊 也没有找到 最后和别人的代码对比才发现少些了一部分在网上又搜搜 发现当set容器放入结构体内容是 需要重载运算符struct node{int a,b,c,d;bool friend operator<(node x,node y){
·
今天在做百度之星热身赛时候 发现我的Set容器不行了 由于放入的是结构体 总是报错
找了n久的错误啊 也没有找到 最后和别人的代码对比才发现少些了一部分
在网上又搜搜 发现当set容器放入结构体内容是 需要重载运算符< 也就是写出来比较规则
struct node
{
int a,b,c,d;
bool friend operator<(node x,node y)
{
if(x.a<y.a) return true;
if(x.a==y.a&&x.b<y.b) return true;
if(x.a==y.a&&x.b==y.b&&x.c<y.c) return true;
if(x.a==y.a&&x.b==y.b&&x.c==y.c&&x.d<y.d) return true;
return false;
}
}code[1005],ip[55];
写完这些之后就可以定义set<node>s
更多推荐
已为社区贡献4条内容
所有评论(0)