我有很多类型可以使用比较函子,我想看看是否有办法在不传递参数的情况下简化它。这是一个虚拟代码示例:
struct Base{};
template<typename T> struct Compare {
bool operator()(const T& a, const T& b) {
return true;
}
};
int main()
{
Base b1, b2;
Compare(b1, b2);
return 0;
}
不幸的是,这不起作用https://godbolt.org/z/q56c3coaT。但后来我想知道 c++17 std::less 是如何工作的,或者有什么办法吗?