Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.29;
Скачать: CL | DM;

Вниз

С типами не разберусь никак :(   Найти похожие ветки 

 
McSimm2   (2003-09-16 09:42) [0]

Есть переменная в моём классе типа стринг. Хочу присваивать её значения любого типа, а мой класс всё это переводил в стринг.


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;

procedure TForm1.Button1Click(Sender: TObject);
var a, b: Integer;
s: String;
begin
a := 100;
s := "sss";
Label1.Caption := AllToStr([ s, a, "+", b, "=", a+b, Label1]);
end;


Почему переменная `s` не воспринимается, как vtString ???
К какому тогда типу должен относиться передаваемый мной последовательный набор символов ???


 
KSergey ©   (2003-09-16 09:45) [1]

Может array of variant?


 
McSimm2   (2003-09-16 09:53) [2]

Не-е-е-е, эт не то.
Я сам разобрался уже.
Набор символов "sdfgsdfsdf" воспринимается,как

vtAnsiString: Result := Result + string(VAnsiString);



Страницы: 1 вся ветка

Текущий архив: 2003.09.29;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.028 c
14-96447
Igor__
2003-09-08 21:05
2003.09.29
Проблемы с ХР


3-96103
Burn
2003-09-09 00:56
2003.09.29
Локальные БД


4-96473
chs2r
2003-07-29 18:27
2003.09.29
TWinControl


3-96072
scorpi
2003-09-10 11:38
2003.09.29
График в Excel


1-96215
Серж
2003-09-08 22:15
2003.09.29
компонент ActiveX F1Book для Delphi 6,7