2
respostas

A utilização do método dup

Vendo as video-aulas, o professor cria a funcao para movimentar o jogador sem utilizar o método dup no heroi. Porém quando eu estava fazendo aqui eu precisei usar o método. Porque no vídeo dele, ele nao precisou usar e eu precisei?

O momento que o professor define a funcao está na video-aula 8, minuto 1:40.

2 respostas

Também precisei adicionar o .dup para movimentar o herói e copiar o valor do array para dentro da função.

Seria algo da versão do ruby usada?

Natalia na real eu acho que faltou isso no momento que o professor gravou a aula, pois mais pra frente no curso ele até menciona que sem esse dup nao ia funcionar.

Um explicacao basica sobre o dup é, para evitar que o array seja copiado gerando assim muita coisa na memoria, quando um array é passado como parametro de uma funcao o que de fato é passado para a funcao é o endereço de memoria do array, portanto se for alterado dentro da funcao ele tambem sera alterado fora dela. Quando usamos o método dup, forçamos o código a duplicar o array, gerando assim 2 array's em 2 endereços de memória.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software