gpt4 book ai didi

c++ - 用户定义的比较运算符(运算符>、运算符<等)

转载 作者:行者123 更新时间:2023-11-28 04:58:17 30 4
gpt4 key购买 nike

我是用户定义比较运算符的新手。我正在读一本书,其中提到了以下示例:

struct P { 
int x, y;
bool operator<(const P &p) {
if (x != p.x)
return x < p.x;
else
return y < p.y; }
};

我想了解bool operator<(const P &p) .特别是我明白bool是运算符的返回类型,即返回值是 truefalse .

但我很困惑,<operator< 中的意义是什么?这个运算符(operator)实际上是如何工作的?正在比较哪些值?

最佳答案

P a, b;
bool ret = a < b;

实际上是:

P a, b;
bool ret = a.operator<(b); // And < in operator<: x.operator<(p.x)

这是否有助于您更好地理解?

关于c++ - 用户定义的比较运算符(运算符>、运算符<等),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46699637/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com