语言之间不同参数传递语义的动机

时间:2018-07-19 01:36:07

标签: parameter-passing programming-languages

C ++,Java和Javascript以及Python和Ruby在参数传递方面都具有不同的语义。

C ++使用户可以选择使用“&”语法按引用和值进行传递。 Java和Javascript按对象的引用值和基元的值传递。由于缺乏更好的术语,Python和Ruby通过“名称和对象”语义传递。我敢肯定,我不太熟悉的其他语言将有更多的语义类别。

这一切都是可以理解的,但是看起来似乎有些武断,因为要记住的事实是在不了解各自语言的设计哲学是如何产生不同语义的情况下。

每种语言中的哪些设计决策或历史背景会激发不同的参数传递语义?

0 个答案:

没有答案