Fórum É possível alterar o valor de constantes? #176979
23/08/2003
0
Akelle Kara
Curtir tópico
+ 0Post mais votado
23/08/2003
Eis o código:
procedure ChangeConst(const Constant; var Value; Size: Integer); begin Move((@Value)^, (@Constant)^, Size); end;
Exemplo de como usar a função:
procedure TForm1.Button1Click(Sender: TObject); const TestStrConst: string = ´Valor inicial´; TestInteger: Integer = 1234; var NewString: string; NewInteger: Integer; begin // Exemplo para Strings: ShowMessage(´Antes da ChangeConst (TestStrConst): ´ + TestStrConst); NewString := ´Novo Valor´; ChangeConst(TestStrConst, NewString, SizeOf(string)); ShowMessage(´Depois da ChangeConst (TestStrConst): ´ + TestStrConst); // Exemplo para Integers: ShowMessage(´Antes da ChangeConst (TestInteger): ´ + IntToStr(TestInteger)); NewInteger := 5678; ChangeConst(TestInteger, NewInteger, SizeOf(Integer)); ShowMessage(´Depois da ChangeConst (TestInteger): ´ + IntToStr(TestInteger)); end;
Cebikyn
Gostei + 1
Mais Posts
23/08/2003
Aroldo Zanela
Se isto fosse possível, não haveria sentido ser denominada de constante. Portanto, se precisa modificar o valor declare como variável.
Gostei + 0
23/08/2003
Akelle Kara
Gostei + 0
23/08/2003
Cebikyn
Vivendo e aprendendo...
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)