Вниз
Скачать: CL | DM;

Массив array of variant   Найти похожие ветки 

← →
Dezo   (2005-05-30 19:37) [0]

Здавствуйте!!!

Посоветуйте как можно решить нижеследующую проблемму:

имеется в модуле SysUtils процедура

procedure Format(str:string;Args: array of const);
begin
..
end;

Мне необходимо передать в качкстве параметра, так

procedure MyProc;
var f: array of variant;
   k:string;
begin
f:=["qw",97]; //например
k:=format("asdasd %s %d",f); //ощибка здесь - несоответсвие типов отмеченные жирным шрифтом
end;
end;

Заранее мпасибо


← →
VMcL ©   (2005-05-30 19:56) [1]

>>Dezo   (30.05.05 19:37)

Почему не написать сразу:
k := format("asdasd %s %d", ["qw",97]);
?


← →
icWasya ©   (2005-05-30 21:43) [2]

во первых, описывать надо как
var
 f:array of TVarRec;

а во вторых это такой геморрой...

Нужно будет вручную
1) задать длину массива f - типа SetLength(f,2)
2) аккуратно заполнить все элементы массива

 f[0].VType:=vtPChar; // это самое простое
 f[0].VPChar:="qw";   // когда строка - константа

 f[1].VType:=vtInteger;
 f[1].VInteger:=97;

3)
потом можно и
 k:=format("asdasd %s %d",f);



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.024 c
1-1117003474
Ji
2005-05-25 10:44
2005.06.14
Запуск процедуры при загрузке dll


1-1117200988
alertus
2005-05-27 17:36
2005.06.14
Pointer->Integer->Pointer


4-1113899638
dimasih
2005-04-19 12:33
2005.06.14
Документация по TService


1-1117147052
iskatel
2005-05-27 02:37
2005.06.14
рекурсия... без рекурсии


6-1111579314
Radgar
2005-03-23 15:01
2005.06.14
SendBuf




   Наверх