如何将不确定数量的参数传递给不同编程语言的函数

时间:2018-03-23 03:58:59

标签: function functional-programming parameter-passing

我使用专有的Wolfram Language™。现在我觉得我必须迁移到更通用的编程语言。我在其他编程语言中查找的一个非常重要的特性是在如何将无限量的参数传递给函数时。基本教程(至少不是我见过的那些)显然没有涵盖这种特性。 Wolfram语言™中的任务非常简单:

Function[x]:=x; (*Function defined with one argument.*)
Function[x__]:={x}; (*Function defined with indefinite amount of arguments.*)
Function[{x__},{y__}]:={x}+{y}; (*Function defined with indefinite amount of arguments of two different "types".*)
(*Etc.*)

直到我弄清楚如何在其他一些常用的编程语言(C,C ++,Java,Python,Ruby,Perl等)中执行此操作(以及其他内容),我将无法确定哪个一个接下来要学习。

请问有关如何使用其他编程语言完成此任务的简编是否明智?

1 个答案:

答案 0 :(得分:1)

这些被称为variadic functions。并非每种语言都支持它们,它们不是一个重要的特性 - 通常你只是将数组/列表/向量(或任何标准有序集合类型)作为单个参数传递,这在许多方面更简单,更实用。 / p>

German Wikipedia articleRosettacode topic在不同的编程语言中有很多例子。