我现在正在学习函数指针。当我阅读K&R关于这个主题的章节时,第一件让我印象深刻的是,“嘿,这有点像闭包。”但我知道这种假设在根本上是错误的,经过在线搜索后,我并没有找到真正比较这两者的分析。
那么为什么C风格的函数指针与闭包或lambda表达式有根本性的不同呢?据我所知,这与函数指针仍然指向已定义(命名)的函数有关,而不是匿名定义函数的实践。
为什么在第二种情况下将一个函数传递给另一个函数被视为更强大,其中它是未命名的,而在第一种情况下只是普通的、日常的函数被传递了呢?
请告诉我我为什么错误地如此密切地将这两者进行比较。
int lessThan
是全局变量,不是吗?那么为什么会是非法的呢? - Will Ness