Форум: "Основная";
Текущий архив: 2002.07.29;
Скачать: [xml.tar.bz2];
ВнизDinamic array vs Open array Найти похожие ветки
← →
id_privin (2002-07-17 15:47) [0]есть переменная
names : array of string;
и процедура
set_names(list : array of string);
begin
names := list;
end;
Компилятор говотит что так делать нельзя, подскажите как сделать тоже самое не присваивая в цикле каждый элемент каждому.
Спасибо.
← →
Skier (2002-07-17 15:49) [1]>id_privin
Type
TStringArray = array of string;
var
names : TStringArray;
set_names(list : TStringArray);
begin
names := list;
end;
← →
id_privin (2002-07-17 15:56) [2]Хочеться чтоб можно было так
set_names(["aaa","bbb"]);
> Skier
По предложенному он скажет Ordinal type required
← →
Skier (2002-07-17 16:04) [3]>id_privin
set_names(["aaa","bbb"]) - Так нельзя будет сделать :(
← →
saxon (2002-07-17 16:17) [4]так наверное кривовато но работает
Type
TStringArray = array of string;
var
names : TStringArray;
procedure set_names(list : TStringArray);
begin
names := list;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
set_names(VarArrayOf(["as"]));
end;
← →
Eugene Lachinov (2002-07-17 16:24) [5]>saxon
Супер, Delphi вызывает DynArrayFromVariant
← →
id_privin (2002-07-17 16:34) [6]Ну неужели Delphi не умееет делать это нормально, по человечески?
← →
Skier (2002-07-17 16:38) [7]>id_privin
Ищи другой способ...Так как ты хочешь сделать - это изврат.
Тогда уж лучше через TStringList...(?)
← →
id_privin (2002-07-17 16:50) [8]Изврат это когда просто хочеться присвоить один массив другому, и попутно еще что-то сделать, да???????????????
Ну не понял тогда я Дельфу
← →
Skier (2002-07-17 16:55) [9]>id_privin
Статические массивы можешь присваивать сколько угодно,
если, конечно, они одинакого объявлены (и значения будут
копироваться).
С динамическими сложнее :
если пишешь A := B, где A и B динамические массивы, то
на самом деле ты присваиваешь адрес массива...
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.07.29;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.007 c