Как преобразовать в текст содержимое переменных любого типа, причем, тип и их количество заранее не известно?

Во-первых, необходимо в функцию передавать открытый массив, чтобы обеспечить передачу любого количества разнотипных переменных.
Во-вторых, проверять тип каждой полученной переменной и преобразовывать ее в текстовую строку функцией, предназначенной конкретно для этого типа.

В примере ниже приведен алгоритм преобразования наиболее часто используемых типов.

Пример:

{Функция преобразования разнотипных данных в строку}
FUNCTION TForm1.AllToStr(CONST Value: ARRAY OF CONST): STRING;
CONST BString: ARRAY [Boolean] OF STRING = ('False', 'True');
VAR
 
 i: Integer;
 S: STRING;
 
BEGIN
 
 Result := ''; 
 FOR i := Low(Value) TO High(Value) DO 
 
  WITH TVarRec(Value[i]) DO BEGIN
 
   CASE VType OF
 
    vtInteger : S := IntToStr(VInteger);
    vtBoolean : S := BString[VBoolean];
    vtChar : S := VChar;
    vtExtended : S := FloatToStr(VExtended^);
    vtString : S := VString^;
    vtPointer : S := IntToHex(LongInt(VPointer), 8);
    vtPChar : S := StrPas(VPChar);
    vtObject : S := vObject.ClassName;
    vtClass : S := vClass.ClassName;
 
   END;
  AppendStr(Result, S);
 
 END;
 
END;
 
............
 
{Пример использование функции AllToStr}
procedure TForm1.Button1Click(Sender: TObject);
VAR a, b: Integer;
begin
 
 a := 10; b := 20;
 Label1.Caption := AllToStr([ a, '+', b, '=', a+b, #9 ]);
 
end;

Последние комментарии

  • viagra the team http://gtviagracan.com - viagra for men for sale what is viagra used for viagra for sale - viagra without a prescription filitra
  • игровые автоматы без регистрации игровые автоматы играть бесплатно  игровые автоматы на деньги игровые автоматы играть бесплатно  игровые автоматы онлайн igrovieqlo игровые автоматы без регистрации игровые автоматы без регистрации игровые автоматы на деньги игровые автоматы бесплатно игровые...
  • Alien Robots r en av v rldens b https://1e6c1ee26.weebly.com/blog/cleopatra-spelautomater Novomatic casinon och dess b sta slots. BanksВ and financial institutions from https://8145fb20d.weebly.com/blog/svenska-casinon talar om n r man pratar slots p n tet. As we've mentioned with other games that...

Счетчики