有关优先队列中的一些问题

dreambyday 2016-11-06 05:22:56
高优先级元素先出队列,也就是x值大的先出队列。

struct number2
{
int x;
bool operator < (const number2 &a) const
{
return x<a.x;//大值优先
}
};
这是一段资料中截取的一部分,用来给队列元素排序的依据。有一些东西不明白。
首先,bool 类型返回的为什么是 x<a.x而不是FALSE or TRUE?
operator < 怎么用的?什么意思?
const number2 &a 不懂,
后面const{}不懂。
求明白的人帮我分析一下,谢谢!
...全文
108 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
paschen 版主 2016-11-06
  • 打赏
  • 举报
回复
const number2 &a 按常引用传递参数,参数传递时不会复制对象 后面const 表示常量成员函数,否则常量对象不能调用
paschen 版主 2016-11-06
  • 打赏
  • 举报
回复
用处:假设有两个结构体对象s1 s2,之后就可以直接用s1 < s2 来比较
paschen 版主 2016-11-06
  • 打赏
  • 举报
回复
x<a.x 是个表达式,得到的结果就是true 与 false,你也可以无条件返回false或true,但那没意义
dreambyday 2016-11-06
  • 打赏
  • 举报
回复
我现在只知道const是定义一个不可改表的量,。。。

64,683

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧