Callbacks na verdade são ponteiros para funções, ou seja, são como variaveis que disparam funções, hora disparar a função x, hora disparam a função y.
Em c++, uma função de callback pode ser definida da seguinte maneira
void (*Callback)(int parametro)
entendendo as partes:
"void" -> como em outra função qualquer, indica-se o tipo de valor retornado, que neste caso é um void (não retorna nada)
"(*Callback)" -> este é o nome da variavel, é a variavel "Callback" que vai apontar para as funções;
"(int parametro)" -> são os parametros que a função de callback vai receber.
Um ponteiro como o nosso ((*Callback)) possui apenas um unico parametro, do tipo Int, logo não pode apontar para funções com um parametro "const char" ou para uma função que tenha mais do que um parametro
Apontando a nossa variavel ((*Callback)) para uma função:
para apontar a nossa função de callback para outra função, fizemos assim
(Callback) = &nome_da_função
Chamando a função apontada por nossa variavel
Para chamar a função apontada por nossa variavel, chamamos assim:
(*callback)(1);
=======================================
Programa exemplo:
#include
#include
typedef const char* string;
using namespace std;
void teste(int valor){
cout <<>
Nenhum comentário:
Postar um comentário