Funcionalidade do operador void () ()
Estou confuso sobre a funcionalidade devoid operator()()
.
Você poderia me dizer sobre isso, por exemplo:
class background_task
{
public:
void operator()() const
{
do_something();
do_something_else();
}
};
background_task f;
std::thread my_thread(f);
Aqui, porque precisamosoperator()()
? Qual é o significado do primeiro e segundo()
? Na verdade, eu sei o funcionamento do operador normal, mas esse operador é confuso.