本文整理自网络,侵删。
这是从Delphi帮助中摘出的一个例子,稍做改动。
Program Test;
{$APPTYPE CONSOLE}
uses Windows, System, SysUtils;
function MakeStr(const Args: array of const): string;
var
I: Integer;
begin
Result := '';
for I := 0 to High(Args) do
with Args[I] do
case VType of
vtInteger:
begin
writeln('vtInteger');
Result := Result + IntToStr(VInteger) + ' ';
end;
vtBoolean:
begin
writeln('vtBoolean');
Result := Result + BoolToStr(VBoolean) + ' ';
end;
vtChar:
begin
writeln('vtChar');
Result := Result + VChar + ' ';
end;
vtExtended:
begin
writeln('vtExtended');
Result := Result + FloatToStr(VExtended^) + ' ';
end;
vtString:
begin
writeln('vtString');
Result := Result + VString^ + ' ';
end;
vtPChar:
begin
writeln('vtPChar');
Result := Result + VPChar + ' ';
end;
vtObject:
begin
writeln('vtObject');
Result := Result + VObject.ClassName + ' ';
end;
vtClass:
begin
writeln('vtClass');
Result := Result + VClass.ClassName + ' ';
end;
vtAnsiString:
begin
writeln('vtAnsiString');
Result := Result + string(VAnsiString) + ' ';
end;
vtCurrency:
begin
writeln('vtCurrency');
Result := Result + CurrToStr(VCurrency^) + ' ';
end;
vtVariant:
begin
writeln('vtVariant');
Result := Result + string(VVariant^) + ' ';
end;
vtInt64:
begin
writeln('vtInt64');
Result := Result + IntToStr(VInt64^) + ' ';
end;
end;
end;
begin
writeln(MakeStr(['abc', 123, 12.34, Now]));
end.
相关阅读 >>
移植Delphi7的tclientsocket,tserversocket
更多相关阅读请进入《Delphi》频道 >>