Manipular Ponteiros
Boa Tarde
Estou precisando de uma orientação em relação a ponteiros no delphi, em C++ bem simples a criar, ler e mover os ponteiros mas não tenho noção de como fazer isso no delphi apesar da minha necessidade ser simples Ex:
Criar um ponteiro “A” no FormMain contendo um Valor “X” ( Talvez um Record )
A partir de qualquer form poder ler este ponteiro ( Modificar o valor do ponteiro durante o programa )
Ao sair do FormMain este ponteiro seja movido da memória
Um dos meus objetivos e eliminar as referencias das janelas filhas Com o FormMain.
Agradeço com antecedência
Estou precisando de uma orientação em relação a ponteiros no delphi, em C++ bem simples a criar, ler e mover os ponteiros mas não tenho noção de como fazer isso no delphi apesar da minha necessidade ser simples Ex:
Criar um ponteiro “A” no FormMain contendo um Valor “X” ( Talvez um Record )
A partir de qualquer form poder ler este ponteiro ( Modificar o valor do ponteiro durante o programa )
Ao sair do FormMain este ponteiro seja movido da memória
Um dos meus objetivos e eliminar as referencias das janelas filhas Com o FormMain.
Agradeço com antecedência
Kanedasam
Curtidas 0
Respostas
Micheus
18/07/2006
definindo um registro:
declaração da variável:
alocação de memória para um ponteiro ´tipado´ e atribuição de valores:
liberação de memoria para um ponteiro ´tipado´:
este é o modo mais simples e fácil de alocar e liberar ponteiros. Há outros como GetMem e FreeMem - dê uma olhada no help.
Não estou certo se coloquei as equivalencias corretamente(tem mais de 15 anos que não programo em C :o). Com esse start, quem sabe outros colegas possam colaborar...
[]s
type // declaração de um ponteiro para o registro do tipo Rec PRec = ^Rec; // declaração do registro Rec Rec = record // equivalente ao struct valor1 :integer; valor2 :string[30]; end;
declaração da variável:
var RecData :PRec; // equivale a: Rec *RecData
alocação de memória para um ponteiro ´tipado´ e atribuição de valores:
New(RecData); RecData^.valor1 := 230; // equivale RecData->valor1 :- 230 RecData^.valor2 := ´Ex. ponteiros Delphi´;
liberação de memoria para um ponteiro ´tipado´:
Dispose(RecData);
este é o modo mais simples e fácil de alocar e liberar ponteiros. Há outros como GetMem e FreeMem - dê uma olhada no help.
Não estou certo se coloquei as equivalencias corretamente(tem mais de 15 anos que não programo em C :o). Com esse start, quem sabe outros colegas possam colaborar...
[]s
GOSTEI 0
Kanedasam
18/07/2006
Caro Micheus
Agradeço muito pela a sua ajuda espero poder um dia retribuir !
Até a próxima
Agradeço muito pela a sua ajuda espero poder um dia retribuir !
Até a próxima
GOSTEI 0