happyforever91
紫荆的传说
采纳率66.7%
2016-07-14 14:37 浏览 1.5k

运算符重载问题-为什么对大于号“<”进行了重载, 可是在return语句里却使用的是小于号“>”

看下面的代码,为什么对小于号“<”进行了重载,
可是在return语句里却使用的是大于号“>”?

struct DINFO
{
int c,p;
bool operator < (const DINFO &a) const {

return c>a.c;

}

};

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

2条回答 默认 最新

  • Liu_yuxuan Liu_yuxuan 2016-07-14 15:34

    说明两个DINFO结构体互相比较的实质是比较其成员变量c, 并且成员变量c越小的DINFO结构体越大

    点赞 1 评论 复制链接分享
  • caozhy 从今以后生命中的每一秒都属于我爱的人 2016-07-14 22:47
     一般情况下的确应该用<,但是有时候也有例外。比如说一等奖、二等奖、三等奖,对它比较,数字越小说明奖越大。卫星照片分辨率,1米级,10米级,100米级,数字越小,分辨率越高……
    具体大小的含义要看你的程序和逻辑的定义。
    
    点赞 评论 复制链接分享

相关推荐