Dennys
#1
Salve senhores!
Sou novato em ruby e estou dando manutenção em um site simples… até agora sem muitas complicações.
Porém vi um trecho de código que me deixou confuso.
Qual a diferença entre:
@conn ||= find_connection();
e
@conn = find_connection();
Eu não entendi o porque do pipe.
Abraços!!!
dlt
#2
Isso é chamado lazy initialization .
Por exemplo:
@var ||= 1
É equivalente a:
@var = @var or 1
Ou seja, se a variável já tiver sido inicializada, continua com o valor original. Senão recebe 1.
Dennys
#3
[quote=dlt]Isso é chamado lazy initialization .
Por exemplo:
@var ||= 1
É equivalente a:
@var = @var or 1
Ou seja, se a variável já tiver sido inicializada, continua com o valor original. Senão recebe 1.[/quote]
Ummmmmm interessanteeeee!
Muito obrigado pela explicação!