我需要想出一些代码来检查给定的整数是否在范围内。(范围由一对整数表示。)
所以,给定一个范围r
定义为a 的范围std::pair<int, int>
和一个测试整数n
,我想说:
if (n >= r.first && n <= r.second)
问题是,我需要使用std::less<int>
比较函子来执行此操作,这意味着我只能使用小于运算符。
我正在尝试提出等效的表达式。我很确定我的判断是正确的,但我并不完全有信心。
我想出的表达是:
( !cmp(n, r.first) && !cmp(r.second, n) )
在哪里cmp
的一个实例std::less<int>
我做对了吗?