I recently discovered that in C++ you can overload the "function call" operator, in a strange way in which you have to write two pair of parenthesis to do so:
class A {
private:
int n;
public:
void operator ()() const;
};
And then use it this way:
A a;
a() ;
In what case can this be consider useful ?