Como que eu vou te explicar isso por e-mail. vou tentar com um exemplo.
function xxx: TStringList;
Var
Sl: TStringList;
Begin
Sl := TStringList.Create;
Sl.Add('ola mundo');
Result := Sl;
FreeAndNil(SL);
End;
Veja este código, ele mostra exatamente o que você está
Na realidade vc não colocava os dados do temporário no result, e sim
passava o temporário para ele, e como vc destruia o temporário se perdia o
vinculo ...
GYNCOWBOY
André Luis da Silveira
- Mensagem original
De: Ricardo César Cardoso [EMAIL PROTECTED]
Para:
Obrigado pela explicação Davi. Realmente, vi que a minha solução não era uma
boa prática, apesar de funcional, mas não sabia exatamente o porque... Valeu
mesmo.
Então o conselho resumido seria: ao invés de utilizar uma Function, utilize uma
Procedure?
Desde já grato,
Ricardo.
Davi Eduardo
Davi Eduardo Borges Wall wrote:
Sugiro que você estude passagem de parâmetros, mais especificamente
passagem de parâmetros por referencia.
Para objetos é indiferente passar por valor ou por referência, a menos
que você precise alterar o endereço do objeto.
--
Joao Morais
achei
interessante.
Também não acho uma solução elegante, mas foi o que ocorreu.
De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de Joao
Morais
Enviada em: quinta-feira, 20 de setembro de 2007 10:23
Para: delphi-br@yahoogrupos.com.br
Assunto: Re: RES: [delphi-br] Duvida ao
Sim!
De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de Ricardo
César Cardoso
Enviada em: quinta-feira, 20 de setembro de 2007 10:26
Para: delphi-br@yahoogrupos.com.br
Assunto: Re: RES: [delphi-br] Duvida ao trabalhar com TStringList
Obrigado pela explicação Davi
Davi Eduardo Borges Wall wrote:
Essa é a diferença. E há casos que vc não consegue trabalhar com o
ponteiro do ponteiro.
Houve um caso aqui mesmo na lista, onde se não me engano o cara
passa uma variável (não instanciada) do tipo form para uma procedure
e dentro da procedure ele usa essa
Ricardo César Cardoso wrote:
Obrigado pela explicação Davi. Realmente, vi que a minha solução
não era uma boa prática, apesar de funcional, mas não sabia
exatamente o porque... Valeu mesmo.
Então o conselho resumido seria: ao invés de utilizar uma Function,
utilize uma Procedure?
O meu
Obrigado pelas dicas, paciência e compreensão João (sempre vc :) ) e Davi
Até +
Ricardo.
Flickr agora em português. Você clica, todo mundo vê. Saiba mais.
[As partes desta mensagem que não continham texto foram removidas]
-br@yahoogrupos.com.br
Assunto: Re: RES: RES: [delphi-br] Duvida ao trabalhar com TStringList
Davi Eduardo Borges Wall wrote:
Essa é a diferença. E há casos que vc não consegue trabalhar com o
ponteiro do ponteiro.
Houve um caso aqui mesmo na lista, onde se não me engano o cara
passa uma
10 matches
Mail list logo