以下代码段给出错误:cannot assign a value to function argument 'a'(BCE2549)
:
function test(int a) {
// cannot assign a value to function argument 'a'(BCE2549)
a = a + 2;
}
这背后的原因是什么?这种行为可以改变吗?
在Ballerina中不能为函数参数赋值。这是经过设计的。根据Ballerina规范,函数参数隐含为final
。这意味着它们是只读的。
如果你想更新输入参数的值,你必须定义一个新的变量,然后更新它
function test(int a) {
int b = a + 2;
}