bool operator()(Iterator it1, Iterator it2) const { return (*it1 < *it2); }
誰かが私のためにこの機能を説明できますか、ありがとう! これは、演算子 () をオーバーロードすることを意味しますか? これをオーバーロードした後、どのように使用しますか?
bool operator()(Iterator it1, Iterator it2) const { return (*it1 < *it2); }
誰かが私のためにこの機能を説明できますか、ありがとう! これは、演算子 () をオーバーロードすることを意味しますか? これをオーバーロードした後、どのように使用しますか?
たとえば、次のようにclass
呼び出された場合のような意味です。Compare
Compare cmp;
....
if(cmp(it1, it2))
{
std::cout << "First element is greater";
}
else
{
std::cout << "Second element is greater";
}
オブジェクトは のようになり、 worldfunction
で呼び出されます。C++
Functor
これは、括弧のオーバーロードの例です
http://www.java2s.com/Code/Cpp/Overload/DemoOverload.htm
そしてもう一つ
http://www.learncpp.com/cpp-tutorial/99-overloading-the-parenthesis-operator/