set容器中放入结构体时需要重载运算符<
2016-05-09 17:43
204 查看
今天在做百度之星热身赛时候 发现我的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
找了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
相关文章推荐
- iOS UISegmentedControl设置指定索引选项不可选
- grabcut使用例程
- 阿里宣布开源Weex ,亿级应用匠心打造跨平台移动开发工具
- 深度揭秘阿里移动端高性能动态化方案Weex
- Weex详解:灵活的移动端高性能动态化方案
- Struts2 动态方法调用
- Struts2拦截器
- Android常用工具类
- PopWindow的demo
- 计算机组成.计算机的真与假.二进制
- JAVA-判断请求来自PC端还是手机端
- Android中自定义控件的步骤
- 自己动手实现sso
- 首帖
- docker安装随记
- 开发单页应用(SPA)时候遇到的微信支付授权目录的坑
- Struts2学习笔记
- 算法学习(十一)数组中出现次数超过长度一半的数
- android studio 查看 keystore MD5等信息
- libdvm.so has text relocations 错误