opérateur booléen() (Iterator it1, Iterator it2) const { return (* it1 < * it2); Est-ce que quelqu'un peut expliquer cette fonction pour moi, merci! cela signifie-t-il surcharger l'opérateur()? après surcharger cela, comment l'utiliser?surcharge et utilisation de l'opérateur C++
1
A
Répondre
5
Cela signifie quelque chose comme si vous avez un class
appelé Compare
par exemple:
Compare cmp;
....
if(cmp(it1, it2))
{
std::cout << "First element is greater";
}
else
{
std::cout << "Second element is greater";
}
Votre objet devient comme function
et il est appelé C++
monde Functor
.
4
est ici un exemple de parenthèses surcharge
http://www.java2s.com/Code/Cpp/Overload/DemoOverload.htm
et un autre
http://www.learncpp.com/cpp-tutorial/99-overloading-the-parenthesis-operator/