当口头谈论方法时,我从不确定是否应该使用参数或参数或其他词。不管怎样,其他人都知道我的意思,但什么是正确的,这些术语的历史是什么?

我是一名c#程序员,但我也想知道人们是否在不同的语言中使用不同的术语。

声明一下,我是自学的,没有计算机科学的背景。(请不要让我去读《代码完成》,因为我这么做是为了让那些还没有史蒂夫·麦康奈尔这本了不起的书的人受益。)

总结

普遍的共识似乎是,在团队环境中可以互换使用这些术语。除非你在定义精确的术语;然后你也可以使用“正式参数/参数”和“实际参数/参数”来消除歧义。


当前回答

Parameter是函数声明中的变量。

参数是传递给函数的这个变量的实际值。

其他回答

在编辑工作中,我经常被人们忘记:结构语言是基于自然语言的。

用英语

“参数”是一个占位符。他们用口语设定回答格式。根据定义,它是呼叫的一方,限制响应。

“论点”是一个正在被考虑的立场。你争论你的观点:你考虑一个论点。

主要区别

论证的主位作用是代理。参数的主题角色是接受者。

的相互作用

把参数看成男性部分,把参数看成女性部分。实参进入形参。

使用

通常在定义中使用参数。实参通常用于调用。

问题

完成这个句子,使它不那么不和谐。

(A)说到定义:

将使用什么参数[]? 参数[]是什么[]?

(B)说到祈祷:

您将使用什么参数,[]? 这个参数[]将是什么[]?

答案

(A)

On /in/against/使用此参数 论点(s)……取

(B)

有什么例子吗 论点(s)……使用/ /反对/

重叠

你可以想象,在回答:在口语中,这些词有时会产生相同的反应!

所以,作为规则:

通常,如果有人想要参数信息,他们想要了解更多关于类型、变量名等的信息。如果你只给出例子论证,他们可能会感到困惑。 通常,如果有人想要参数信息,他们想知道你传递给函数或它的形参的值是什么。

你得回到最基本的问题上来。构造函数和方法都有形参和实参。很多人甚至把构造函数称为特殊的方法。这是一个方法声明参数的使用方式:

      type name(parameters){
           //body of method
          }

这是构造函数声明参数的使用方式:

classname(parameters){
//body
}

现在让我们看一个计算立方体体积的示例代码:

public class cuboid {
    double width;
    double height;
    double depth;

      cuboid(double w,double h,double d) { 
      //Here w,h and d are parameters of constructor
       this.width=w;
       this.height=h;
       this.depth=d;
       }

        public double volume() {
        double v;
        v=width*height*depth;
        return v;
        }
        public static void main(String args[]){
           cuboid c1=new cuboid(10,20,30);
           //Here 10,20 and 30 are arguments of a constructor
           double vol;
           vol=c1.volume();
           System.out.println("Volume is:"+vol);

           }
    }

现在你明白了,当我们在代码后面的某个地方调用对象的构造函数/方法时,传递的是参数而不是形参。因此,形参仅限于定义逻辑对象的地方,而实参则在实际创建物理对象时发挥作用。

或者更简单…

争论开始了!

参数输出!

这些术语在某种程度上是可以互换的。其他答案中描述的区别用术语形式形参表示函数体中使用的名称,用术语形参表示调用站点提供的值(形式实参和实参也很常见)更为恰当。

还要注意的是,在数学中,参数(argument)这个词更常见,而参数(parameter)通常意味着完全不同的东西(尽管参数方程中的参数本质上是两个或多个函数的参数)。

这是一个关键:价值问题……

参数是键

参数是值

/****************************************/

例子:

名称:“彼得”

/********/

let printName = (name) => console.log(name)

printName(“Peter”)

/********/

在本例中,参数是"name",参数是"Peter"