Funkcjonalność operatora pustego () ()
Jestem zdezorientowany co do funkcjonalnościvoid operator()()
.
Czy mógłbyś mi o tym powiedzieć, na przykład:
class background_task
{
public:
void operator()() const
{
do_something();
do_something_else();
}
};
background_task f;
std::thread my_thread(f);
Tutaj, dlaczego potrzebujemyoperator()()
? Jakie jest znaczenie pierwszego i drugiego()
? Właściwie znam działanie normalnego operatora, ale ten operator jest mylący.