Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 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.009 c
3-95219
weak
2002-07-08 10:53
2002.07.29
Locate


3-95266
UnDISCOvery
2002-07-08 14:15
2002.07.29
MS ADO. Как определить установлено ли ?


7-95579
Сергей Ф
2002-04-27 20:58
2002.07.29
Как определить 95,98,NT,ME,2000 или Win XP стоит на компьютере?


14-95557
AlexLumpov
2002-07-03 21:50
2002.07.29
Как уменьшить rtl60.bpl


3-95250
ioRaptor
2002-07-08 20:39
2002.07.29
Как занести jpeg картинку в blob поле (InterBase)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский