"operator()"在重载运算符方法中是什么意思,在priority_queue(STL)中用作C++中的比较器?
What "operator()" means in overloading operators method, used in priority_queue (STL) as comparator in C++?
我在一本关于重载运算符的 c++ 算法书中读到过,在这种情况下我很难理解重载运算符的工作原理。这是代码序列:
struct cmp {
bool operator () (const int &x, const int &y) const
{
return x % 17 < y % 17;
}
};
int main() {
priority_queue<int, vector<int>, cmp> note;
note.push(80); note.push(97); note.push(100); note.push(30);
while ( note.size() > 0 )
{
cout << note.top() << " ";
note.pop();
}
return 0;
}
我不明白的是这行代码:
bool operator () (const int &x, const int &y) const
请有人帮帮我!
我不
明白的是这行代码:
bool operator () (const int &x, const int &y) const
此行代码声明运算符 (( 的运算符重载。此重载有两个参数,这两个参数都是对 const int 的引用。它被声明为 const,因此可以通过 const lvalues 调用它。运算符返回布尔值。
相关文章:
- "operator()"在重载运算符方法中是什么意思,在priority_queue(STL)中用作C++中的比较器?
- 比较两个std::矢量/阵列,或者通常比较两个stl连续器
- 比较器在 stl.
- 通过函数指针对类内的 STL SET 使用自定义比较器
- STL映射比较器能否以某种方式获取指向映射本身的指针?
- STL 中的最小堆,不带比较器
- C++ STL . 自定义比较器如何工作?
- 是在STL中使用的COMP比较器是从未更改的STL比较比较STL中的对象
- 如何使用特定构造函数使用STL Priority_queue 比较器
- 为什么仅通过模板指定STL设置比较器
- 我们可以使用异构查找比较器对 STL 关联容器执行"partial-match"搜索吗?
- STD :: SET(或STD :: MAP)是否有一个提供基于值的查找的STL比较器?STD :: lands_les
- C - 如何正确地将比较器传递到STL功能
- STL 映射自定义比较器
- STL地图 - 何时使用自定义比较器
- 如何使用初始数据和自定义比较器声明 stl::p riority_queue
- STL中的比较器
- 为什么C++ STL 容器使用 "less than" 运算符<而不是 "equal equal" 运算符== 作为比较器?
- C++/STL默认比较器
- 如何编写带有中间变量的比较器以进行 stl 排序