Fórum Parametro com var #335858
09/01/2007
0
Bom dia amigos!
Estou postando essa dúvida mais por curiosidade do que por necessidade, acho que é uma coisa que eu já deveria saber, mas...
Qual a diferença de declara:
Procedure Teste(var teste: string);
Procedure Teste(teste: string);
Pode ser feito isso tabém:
function teste(var teste:string):string;
function teste(teste: string):string;
Eu já vi isso em algum lugar só não me lembro onde
Ruyoutor
Curtir tópico
+ 0Posts
09/01/2007
Ruyoutor
Gostei + 0
09/01/2007
Massuda
Quanto ao título, procure usar algo descritivo, já que o fórum não ajudaria muito as pessoas se estivesse cheio de tópicos com títulos do tipo ´Dúvida´ ou ´Preciso de ajuda!´.
Gostei + 0
09/01/2007
Ruyoutor
Valeu Massuda!
Você é o cara
Gostei + 0
09/01/2007
Ruyoutor
procedure teste(var teste: string);
eu posso modificar o parâmetro dentro da procedure
e se eu declarar assim:
procedure teste(const teste:string);
eu não posso modificar o parâmetro dentro da procedure
i se eu declara assim:
procedure teste(teste:string);
Gostei + 0
09/01/2007
Massuda
Como o [b:8d55be088f]var[/b:8d55be088f] faz com que a passagem de parametros seja por referencia, a string dentro da procedure é a mesma variável que você passou para a procedure. Se você modificar o parâmetro, você estará modificando a variável.
Sem o [b:8d55be088f]var[/b:8d55be088f] a passagem de parametros é por valor, de modo que é criada uma nova string para uso pela procedure com o mesmo conteúdo da variável que você passou para a procedure. Assim, se você modificar o parâmetro, você estará modificando a cópia, não tendo efeito sobre a variável.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)