几个表示“参数”、“属性”的单词有何区别?

这四个单词在编程领域很常见,然而目前为止我感觉它们表达的意思都很接近,想要更进一步地了解它们的区别和真实语义。 这四个词是: argumentattr…
关注者
9
被浏览
4,973

4 个回答

泻药

仅做补充

1、普通英语环境中

argument 常见含义是“干仗”和“理由”(论点、论据,争论)

attribute 一般是说明一个归因,或者是某种物件的属性

property 一般用表示的比较多的是财产啊房产啊所有物啥的

parameter 通常就是参数


2、编程环境中

argument 应该是按数学方向的名词来解释,就是函数的自变量,也就是所谓的函数实参

attribute 就是对象的属性,通常是作为个体的私有的来理解,也就是实例的私有属性

property 有性质的意思,就是说可以归类的,应该是指某种类型所具有的,并且是这部分类型所公开的具有的,非私有的。

parameter 就是参数的意思不变,通常指形参。


实际编程环境中,项目文档中 attribute 与 property 要求并不严格,能说明就好。除非非常严谨的文档才刻意区分它们。


希望我这回答是 a persuasive argument(雾 (逃

没有很严格的区别,大致是这样的(伪码,不是任何语言的语法):

class Person{

Date birthday: readOnly;

int getAge(int atYear){

return atYear - birthday.year;

}

}

new Person(...).getAge(2018);

以上:

birthday 是 property

readOnly 是 attribute

int atYear 是 parameter (形参)

2018 是 argument (实参)