首页 > 解决方案 > 更大<>与更大之间的区别与 C++ 中的更大<>()与更大()?

问题描述

我是 C++ 的初学者。我遇到了“更大”比较器的使用。我知道它在 sort()、priority_queue 等地方的应用。我只是希望有人详细解释 Greater <> vs greater vs greater<>() vs greater()之间的区别。我无法在任何地方找到明确的答案。

编辑 1:我的问题只是对这些功能的“幕后”机制有一个总体和更好的理解。我确实在 cppreference 等网站上获得了一些有用的信息,但无法同时找到这四个网站之间的区别。

编辑 2:我发现这条评论特别有用。

至于 OP 的问题,我认为如果你想创建对象并存储它,就会使用更大的<>,比如更大的 <> func,更大的将是 C++14 之前使用的等效项,或者如果你不希望推断出类型,greater<>() 将用于在 C++14 之后不存储对象的情况下传递给函数,而在 C++17 之后,greater() 将用于传递给函数而不存储对象。

感谢@冒号 D

有人可以确认上述内容吗?或者只是解释更多相同?

标签: c++comparator

解决方案


推荐阅读