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

Вниз

Динамический массив   Найти похожие ветки 

 
stas_a   (2003-01-23 17:44) [0]

Эдрасьте ВСЕ!!! Подскажите пожалуйста:
Декларирую(Глобально) динамический массив

var myarr: array of boolean;

затем в коде пишу

Setlength(Myarr,1);

Такой вопрос как потом(во время выполнения программы) увеличить длинну массива на 1 без потери данных и как уменьшить с потерей последнего значения.


 
han_malign   (2003-01-23 17:53) [1]

For a long-string or dynamic-array variable, SetLength reallocates the string or array referenced by S to the given length. Existing characters in the string or elements in the array are preserved, but the content of newly allocated space is undefined.

Lingvo:
Preserve -
1. сохранять [-нить];
предохранять [-нить];
заготовлять впрок (овощи и т.п.);
2. (mst pl.) консервы /pl. (a. opt.);
варенье;
заповедник


 
MBo   (2003-01-23 17:54) [2]

SetLength именно так и сделает.
Частые изменения размеров массивов - не слишком хорошо.


 
Johnmen   (2003-01-23 17:55) [3]

Setlength


 
gsu   (2003-01-23 17:55) [4]

+ Setlength(Myarr, length(Myarr));
- Setlength(Myarr, length(Myarr)-1);


 
stas_a   (2003-01-23 17:58) [5]

Спасибо ! ! ! :)


 
han_malign   (2003-01-23 18:11) [6]

Частые изменения размеров массивов - не слишком хорошо.
- связные списки тоже не решают проблемы фрагментации памяти, а выделиний/отпусканий памяти даже больше, и доступ к элементам геморойный. TList и подобные тоже реалокируют память при изменении размера.
Так что никуда не деться, разве что, если известно максимальное возможное количество элементов, то лучше задать максимальный размер(все равно если к страницам(4096 б) не обращаться, винды их в свап скинут) и переменную для фактического размера.


 
Chubais   (2003-01-23 18:13) [7]

han_malign © (23.01.03 17:53)
заповедник больше к этой ветке подходит...


 
gsu   (2003-01-23 18:13) [8]

а в .net улучшенная сборка мусора, может ему туда ? (-:|~



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

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

Наверх





Память: 0.46 MB
Время: 0.009 c
1-5044
Azim
2003-01-24 10:35
2003.02.03
DBGrid


1-4960
в режиме поиска
2003-01-23 12:19
2003.02.03
TreeNode.Data и String


3-4727
GIL
2003-01-18 07:44
2003.02.03
Как узнать есть-ли в XP драйвера для Paradox


9-4696
Владимир Васильев
2002-08-15 13:53
2003.02.03
Тема для общего игрового проекта.


14-5176
hoper
2003-01-18 01:55
2003.02.03
исходники Microsoft





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