2016-10-01 3 views
2

я нашел следующее решение здесь о посте: https://stackoverflow.com/a/34327262/2994949переменного Назначения: Разница между «<-» и «=» в определенной должности и избежать использования «возвращения»

Пользователь eipi10 использует = для установки значения corrFunc. Почему он это делает?

Кроме того, он создает data.frame в следующей строке, но не использует return, чтобы вернуть этот код data.frame из кода. Функция работает, поэтому я задаюсь вопросом, почему и как.

EDIT Предусматривает ли она какие-либо преимущества бывших в употреблении или не использовать команду return? Это то, на что не ответили раньше, поэтому я думаю, что это не дубликат.

Я попытался задать это в комментарии, но мне нужно 50 репутации, чтобы комментировать и почему я поставил ответ в начальном потоке, он был немедленно удален. Может ли кто-нибудь сказать мне, как спросить о решении, которое я нахожу в потоке, когда я не могу комментировать и не могу отправить ответ?

спасибо.

EDIT

Первая часть моего вопроса был дан ответ частично по ссылке, но я до сих пор не понимаю, почему return избежать. спасибо :)

+5

http://stackoverflow.com/questions/1741820/assignment-operators-in-r-and – rawr

+1

Для части на 'return()' http://stackoverflow.com/questions/11738823/explicitly-calling- return-in-a-function-or-not/ – jogo

ответ

2

От ?return:

Если конец функции достигается без вызова возврата, значение последнего вычисленного выражения возвращается.

Например,

f <- function() { 
    x <- 1 
    x 
} 

эквивалентна одной и той же функции с return(x) в качестве последнего заявления. Может быть, удивительно, что

f <- function() { 
    x <- 1 
} 

также возвращает то же значение, но оно возвращает незримо. Существует незначительный раскол (возможно, не такой сильный, как = против раскола <-) о том, лучше ли использовать явную явную return(): я считаю, что это хорошая практика (потому что это делает ясность кода более явным) но многие программисты из старой школы предпочитают неявное возвращаемое значение.

+0

Предоставляет ли он какие-либо преимущества с явным возвратом? Просто интересуюсь. – rashid

+0

только стилистическое/читабельность, насколько я знаю –

+0

Итак, так как я новичок, и я пытаюсь разработать хороший стиль, рекомендуется ли его использовать или он считается избыточным кодом, который следует оставить без внимания? – rashid