Вниз
Скачать: 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.022 c
3-1114760089
Zhekson
2005-04-29 11:34
2005.06.14
InstallShield & BDE


1-1117175223
ingine
2005-05-27 10:27
2005.06.14
Удаление Строк в StringGrid


3-1115155542
rosl
2005-05-04 01:25
2005.06.14
данные из файла


14-1116707198
Gamer
2005-05-22 00:26
2005.06.14
CD-ROM => CD-Player


14-1116953519
Vulko
2005-05-24 20:51
2005.06.14
Как искуственно вызвать исключение на c++?




   Наверх