Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.11.21;
Скачать: CL | DM;

Вниз

Как правильно копировать динамические масивы?   Найти похожие ветки 

 
Alek_1   (2004-11-09 01:22) [0]

SetLength(Viborka.m_raion,Length(m_sp_raion_sel));
Viborka.m_raion:=Copy(m_sp_raion_sel[0],1,Length(m_sp_raion_sel));

выдает ошибку (, несоответствие типов.
и тот и другой масив типа
array of string;


 
GuAV ©   (2004-11-09 01:33) [1]

Alek_1   (09.11.04 1:22)
SetLength(Viborka.m_raion,Length(m_sp_raion_sel));
Viborka.m_raion:=Copy(m_sp_raion_sel[0],1,Length(m_sp_raion_sel));


Вместо всего этого:
Viborka.m_raion:=Copy(m_sp_raion_sel);


 
Defunct ©   (2004-11-09 03:26) [2]

стремно как-то.

Я бы сделал обычный цикл.

SetLength( Array2, Length( Array2 ) );

for i:=0 to Length(Array1)-1 do Array2[i] := Array1[i];


 
Германн ©   (2004-11-09 03:33) [3]

А чем плоха старая, добрая Move?


 
Stexen   (2004-11-09 03:42) [4]

Удалено модератором


 
Германн ©   (2004-11-09 03:52) [5]

Удалено модератором


 
Stexen   (2004-11-09 03:53) [6]

Удалено модератором


 
Германн ©   (2004-11-09 03:59) [7]

Удалено модератором


 
TUser ©   (2004-11-09 09:48) [8]


> Я бы сделал обычный цикл.

Это медленнее, чем копирование блока памяти сразу. Я делаю через CopyMemory.

> че на скоращал???

"сд.пр.к.с.вс.уд.и.в.на м.од.инт.хол" - прочитав это и мигом сообразив, что сие означает "Сдается прекрасная комната со всеми удобствами и видом на море одинокому интеллегентному холостяку", Остап подумал: "Сейчас я кажется холост"
(C)


 
Германн ©   (2004-11-10 05:28) [9]

Кажись, у "модератора" тогда что-то болело. Скорее всего болели зубы! Мои соболезнования!
И искренне желая вышеупомянутому скорейшего избавления от вышеназванного, стремлюсь лишь восстановить оригинальную цитату из "Золотого теленка":
 "Прочтя в черноморской вечерке объявление: "Сд. пр. ком. в. уд. в. н. м. од. ин. хол.", и мигом сообразив, что объявление это означает - "Сдается прекрасная комната со всеми удобствами и видом на море одинокому интеллигентному холостяку", Остап подумал: "Сейчас я, кажется, холост.  Еще недавно старгородский загс прислал мне извещение... и т.д.

А TUser ©   (09.11.04 09:48) [8] все понял правильно. И с юмором.
Но неверно процитировал оригинал.


 
Defunct ©   (2004-11-10 06:44) [10]

TUser ©   (09.11.04 09:48) [8]
> Это медленнее, чем копирование блока памяти сразу.

IMHO те же грабли вид сбоку

Массивы выровняны, что
Rep MovsD, (CopyMemory)

что (копирование циклом)
L1:
Mov EAx, [Edx]
Mov [EBx], EAx
Sub ECx, 4
Jns L1

По скорости практически одно и тоже.
IMHO просто копирование в цикле имеет, как бы это сказать "более Паскалевский вид", прозрачнее для понимания.



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

Текущий архив: 2004.11.21;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.025 c
1-1100063817
Frozzen
2004-11-10 08:16
2004.11.21
Построение В-сплайна, как выбрать контр. точки?


14-1099218854
Pat
2004-10-31 13:34
2004.11.21
.NET и драйвера


1-1099937284
Змей
2004-11-08 21:08
2004.11.21
Горячая клавиша


1-1099984352
DesWind
2004-11-09 10:12
2004.11.21
Строковые константы


1-1100072581
vint45
2004-11-10 10:43
2004.11.21
Имя столбца в Ехсеl