Comment peut-il être utile à la surcharge de la fonction “appel” de l'opérateur?

J'ai récemment découvert qu'en C++, vous pouvez surcharger la fonction "appel" de l'opérateur, d'une manière étrange dans lequel vous devez écrire deux paires de parenthèses pour le faire:

class A { 
  int n;
public: 
  void operator ()() const; 
};

Et ensuite l'utiliser de cette façon:

A a;
a();

Quand est-ce utile?

InformationsquelleAutor lurks | 2010-02-28