Acabo de aprender sobre indicadores de função e, enquanto lia o capítulo K&R sobre o assunto, a primeira coisa que me atingiu foi: "Ei, isso é meio que um encerramento." Eu sabia que essa suposição estava fundamentalmente errada de alguma forma e, após uma pesquisa online, não encontrei realmente nenhuma análise dessa comparação.
Então, por que os ponteiros de função no estilo C são fundamentalmente diferentes de fechamentos ou lambdas? Até onde eu posso dizer, isso tem a ver com o fato de que o ponteiro de função ainda aponta para uma função definida (nomeada) em oposição à prática de definir anonimamente a função.
Por que passar uma função para uma função é vista como mais poderosa no segundo caso, onde não tem nome, do que no primeiro, onde é apenas uma função normal do dia a dia que está sendo passada?
Por favor, diga-me como e por que estou errado em comparar os dois tão de perto.
Obrigado.