我看到了两个概念
好像这两个概念是一样的?(λ)
我很困惑?
第一类函数是一个被具体化的函数——即它可以作为语言的一部分进行操作,可以传递给其他函数,可以是变量的值。
匿名函数只是一个没有名称的函数(或者没有“函数”名称,如果函数和变量占用不同的命名空间)。
设计一种具有匿名、非一流函数的语言会比较困难,但是这两个概念足够不同,你至少可以做到。同样,您绝对可以拥有一种具有一流函数但没有匿名函数的语言。这些语言很少见,因为这样的设计没有什么意义。
马尔辛有正确的答案。举一些例子:C 和 C# 1.0 都有一流的函数,但没有匿名函数。在这两种情况下,您只能显式声明命名函数,但是一旦有了,您就可以获取对它们的引用并将它们存储在变量中。