У меня есть две функции, которые я не могу сказать, чисты они или нет.Являются ли эти функции чистыми или нечистыми?
Это первый из них.
someFunction(ref input1, ref input2) {
input2 = input1 + input2
return input2
}
Я считаю, что его нечистая функция, потому что она допускает изменчивость ввода2. Но почему это проблема? Мы не можем получить доступ к вводу2 вне функции, поэтому я не понимаю, почему это имеет значение, если оно мутировано или нет.
Вот моя вторая функция.
someFunction(ref input1, ref input2) {
return input1 + input2
}
Опять же, я думаю, что это нечистая функция, потому что она пропускает input1 и input2 по ссылке. Но опять же, я не понимаю, почему это проблема. Мы не изменяем input1 или input2 ... поэтому почему эта функция нечиста?
«Мы не можем получить доступ к вводу2 вне функции« Что вы имеете в виду? – AndyG
Это не C++. - – Quentin
Этот код намеревается быть C++ или нет? Это даже близко не компилируемый код. –