我试图理解所有这些巨大的函数指针概念......
是否可以使用非声明函数初始化函数指针?
例如,函数指针的简单用法是:
void f()
{
printf("Hello world!");
}
//Somewhere in the program
void (*foo)();
foo = &f;
有没有办法跳过f的声明?类似的东西:
void (*foo)();
foo = { printf("Hello world!"); }
答案 0 :(得分:4)
您所描述的内容称为lambda functions,这是C中没有的机制。您可以将lambda函数视为匿名函数。
C ++和C#支持。阅读更多内容。Function pointers, Closures, and Lambda