Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2011.05.01;
Скачать: [xml.tar.bz2];

Вниз

Правильно создать клон структуры   Найти похожие ветки 

 
Ruzzz   (2009-09-12 10:01) [0]

Как я понимаю _CopyRecord из system это то что мне нужно? Создаю список элементов, каждый элемент это структура, получается что можно без проблем копировать с помощью Move, но вот если есть строки/динамические массивы/другие структуры то приходится явно присваивать значения. Поможет ли _CopyRecord?


 
DVM ©   (2009-09-12 13:57) [1]


> Создаю список элементов, каждый элемент это структура, получается
> что можно без проблем копировать с помощью Move, но вот
> если есть строки/динамические массивы/другие структуры то
> приходится явно присваивать значения.

Да, но если поля записи в свою очередь структуры, не имеющие полей типа строки и т.д., то они тоже будут скопированы с пом Move


 
Sapersky   (2009-09-12 19:26) [2]

Относительно вложенных дин. массивов есть такой момент - копируются только ссылки с увеличением RefCount (так же как для строк), но в отличие от строк модификация данных копии не отслеживается, со всеми вытекающими последствиями - пишем в "новый" массив, на самом деле меняются оба...
Здесь:
http://sapersky.narod.ru/files/TypInfoEx.rar
есть функция UniqueData (аналог UniqueString), создающая уникальные копии данных вложенных дин. массивов (ну и строк заодно, хотя это необязательно).


 
СовестьДМ ©   (2009-09-13 02:25) [3]

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


 
Ruzzz   (2009-09-13 22:45) [4]

Sapersky, спс, модуль интересный, но было бы не плохо иметь больше комментариев к коду, и желательно также и на русском :)


 
Суслик_   (2009-09-20 02:08) [5]

мое имхо, что явное поэлементное копирование прозрачнее, нежели спец средства.

я бы писал поэлементное копирование (благо теперь в дельфи есть методы для записей)


 
имя   (2009-09-20 02:21) [6]

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



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

Форум: "Основная";
Текущий архив: 2011.05.01;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.004 c
2-1295978254
caHek
2011-01-25 20:57
2011.05.01
Delphi авторизация на сайте, и .....


2-1296219653
mefodiy
2011-01-28 16:00
2011.05.01
Выполнение ShellExecute


15-1295508835
jack128_
2011-01-20 10:33
2011.05.01
Как получить код возврата из Powershell ?


2-1295681117
markers
2011-01-22 10:25
2011.05.01
COM объект и SafeArray


15-1295213390
Юрий
2011-01-17 00:29
2011.05.01
С днем рождения ! 17 января 2011 понедельник





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский