Biblioteca Funcional C ++ - operador ()

Descrição

Ele invoca o destino de função chamável armazenado com os parâmetros args.

Declaração

A seguir está a declaração para std :: function :: function :: operator ()

R operator()( Args... args ) const;

C ++ 11

R operator()( Args... args ) const;

Parâmetros

args - parâmetros a serem transmitidos ao destino de função chamável armazenado.

Valor de retorno

Ele retorna nenhum se R for nulo. Caso contrário, o valor de retorno da invocação do objeto chamável armazenado.

Exceções

noexcept: Não lança nenhuma exceção.

Exemplo

No exemplo abaixo para std :: function :: operator ().

#include <iostream>
#include <functional>
 
void call(std::function<int()> f) {
   std::cout << f() << '\n';
}

int normal_function() {
   return 50;
}

int main() {
   int n = 4;
   std::function<int()> f = [&n](){ return n; };
   call(f);

   n = 5;
   call(f);

   f = normal_function;
   call(f);
}

A saída deve ser assim -

4
5
50