Def,Void,Function?

时间:2009-11-06 05:08:26

标签: language-agnostic function

最近,我一直在学习不同的编程语言,并且遇到许多不同的名称来初衷化函数结构。

例如,ruby和python使用def关键字,php和javascript使用函数,而VB使用void等。

我的问题是:这些不同结构和关键字之间的原因和区别是什么?

1 个答案:

答案 0 :(得分:1)

C以及从中复制的所有语言都不使用任何关键字来声明函数 - 您只需要<returned type> <function name>(<arguments)void只是说“根本没有类型”的方式,即我们以前称之为“子程序”或“程序”(一种不返回任何值的“函数”)。

在Javascript中使用的

function显然是一个尖锐且立即明显的关键字,同样适用于命名和无名函数。恕我直言,这是最好的一群。

我不知道Guido在选择def作为命名函数时是在想什么,lambda选择未命名的函数(荷兰,他出生和成长的地方以及他当时居住的地方) ,当然有很多美妙的啤酒;-)。 Ruby刚从Python中采用def,可能只是因为它很短(但它没有明智的含义或解释......!)。