我有两个功能,我无法判断它们是否纯净。
这是第一个。
someFunction(ref input1, ref input2) {
input2 = input1 + input2
return input2
}
我认为它是一个不纯的函数,因为它允许input2的可变性。但为什么这是一个问题呢?我们无法在函数之外访问input2,所以我不明白为什么它变异或者是否发生变化。
这是我的第二个功能。
someFunction(ref input1, ref input2) {
return input1 + input2
}
同样,我认为这是一个不纯的函数,因为它通过引用传递input1和input2。但同样,我不明白为什么这是一个问题。我们没有修改input1或input2 ......为什么这个函数不纯?