Главная страница
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.029 c
6-96315
podonok
2003-07-31 05:29
2003.09.29
Чат


1-96179
qwerty2
2003-09-16 10:34
2003.09.29
PSafeArray и OleAutomation


1-96298
BanderLog
2003-09-16 13:16
2003.09.29
FastReport для D7


3-96134
stud
2003-09-05 15:59
2003.09.29
структура таблиц


1-96232
-=GaLaN=-
2003-09-17 17:03
2003.09.29
Работа с буфером обмена