一般来说,我们都听说过编程语言中的函数或过程。然而,我发现我几乎可以互换地使用这些术语(这可能是非常错误的)。
我的问题是:
它们的功能、目的和用途有什么不同?
请举例说明。
一般来说,我们都听说过编程语言中的函数或过程。然而,我发现我几乎可以互换地使用这些术语(这可能是非常错误的)。
我的问题是:
它们的功能、目的和用途有什么不同?
请举例说明。
当前回答
有一个术语子程序或子程序,它代表一段参数化的代码,可以从不同的地方调用。
函数和过程是它们的实现。通常函数返回值,过程不返回任何东西。
其他回答
一般来说,程序是一系列指令。 函数可以是相同的,但它通常返回一个结果。
函数返回值,过程只执行命令。
函数的名称来源于数学。它用于根据输入计算一个值。
程序是一组可以按顺序执行的命令。
在大多数编程语言中,甚至函数也可以有一组命令。因此,区别只在于返回值部分。
但是如果你想让函数保持简洁(看看函数式语言就知道了),你需要确保函数没有副作用。
如果我们在这里与语言无关,那么过程通常指定了可靠且幂等地实现某个结果所需的一系列行为。也就是说,一个过程基本上就是一个算法。
另一方面,函数是较大程序中某种程度上独立的代码段。换句话说,函数是过程的实现。
在db的上下文中: 存储过程是预编译的执行计划,而as函数不是。
在大多数情况下:函数返回一个值,而过程不返回。两者都是组合在一起做相同事情的代码片段。
在函数式编程上下文中(所有函数都返回值),函数是一个抽象对象:
f(x)=(1+x)
g(x)=.5*(2+x/2)
这里,f和g是同一个函数,但是过程不同。