Quando uma função deve incluir uma declaração de retorno explícita em Julia?


8

quando uma função em Julia deve ter uma declaração de retorno usando a palavra-chave return e quando ela deve retornar com a variável que eu quero retornar no final da função?

Eu estava lendo os documentos de Julia e parece que há bastante literatura sobre o assunto encontrada aqui .

Meu entendimento é que a convenção é sempre usar returnse você estiver tentando interromper a função e, caso contrário, ter apenas a variável que deseja retornar no final da função.

Meu entendimento está correto ou estou faltando alguma coisa aqui?

Respostas:



4

Tecnicamente falando, você precisa usar a returnpalavra - chave se retornar CodeInfode uma @generatedfunção. Devido a um bug de longa data https://github.com/JuliaLang/julia/issues/25678, o que aparece se você estiver tentando implementar o estilo de cassete aprovado ou similar (consulte um post que escrevi sobre isso)

Com isso dito, isso é tão incrivelmente obscuro que eu realmente hesito em dar essa resposta. Para quase uma dúzia de pessoas que tentam fazer isso, a presença de retorno ou não na última declaração é puramente uma questão de estilo.


4

É uma questão de gosto, mas eu prefiro fortementereturn declarações explícitas em funções de várias linhas.

Sempre dou uma olhada dupla e fico confuso por um segundo e meio sempre que vejo uma variável ou expressão solitária oscilando sozinha na última linha. Acho estranho e deselegante.

Instruções explícitas returnmelhoram muito a legibilidade, imho.


3

Isso é puramente estilístico. Nunca é necessário usar a returnpalavra - chave. Pessoalmente, eu não uso.


1
Bem, você precisa se deseja retornar do fluxo de controle.
Fredrik Bagge
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.