Вниз
Скачать: CL | DM;

Dynamic array: добавление и удаление элементов массива?   Найти похожие ветки 

← →
sea   (2003-04-08 15:30) [0]

Добрый день. После объявления динамического массива, выделяем память - SetLenght(A,50). В процессе работы требуется добавить элемент к массиву А, или удалить элемент из массива. Какими командами это можно сделать? (А добавляется (удаляется) к концу массива?). И есть ли такой оператор, чтобы добавлял (удалял) элемент в нужную позицию (например в 21 ячейку), а старые значения автоматически сдвигал (с 21 в 22, с 22 в 23 ... с 50 в 51)?
Заранее благодарен.


← →
Ricks ©   (2003-04-08 15:35) [1]

Нет, таких операций, вроде, нет.
Добавляются и удаляются элементы тем же SetLength, а сдвигать прийдеться ручками


← →
Skier ©   (2003-04-08 15:38) [2]

>sea

> И есть ли такой оператор, чтобы добавлял (удалял) элемент
> в нужную позицию (например в 21 ячейку), а старые значения
> автоматически сдвигал (с 21 в 22, с 22 в 23 ... с 50 в 51)?

Нет.
1) Или используй Move(...)
2) Или переходи на список TList


← →
MityaP ©   (2003-04-08 16:07) [3]

Да напиши пару функций (AddToArray, InsertToArray, MoveInArray, DeleteInArray) один раз и не парься - на всю жизнь хватит... Там писать-то пару минут...


← →
paxer   (2003-04-08 18:39) [4]

MityaP просвети, как можно написать эти процедуры (AddToArray, InsertToArray, MoveInArray, DeleteInArray) - на всю жизнь?
Для массивов разного типа?


← →
MityaP ©   (2003-04-08 19:37) [5]

Легко...
Например:

type
TArrayObjects: array of TObjects;
TArrayStrings: array of string;
TArrayPointers: array of pointer;
TArrayFloat: array of Extended;
и т.д.


procedure AddToArray(AArray: TArrayObjects, AValue: TObjects); overload;
procedure AddToArray(AArray: TArrayStrings, AValue: string); overload;
procedure AddToArray(AArray: TArrayPointers, AValue: pointer); overload;
procedure AddToArray(AArray: TArrayFloat, AValue: Extended); overload;

и т.д.




← →
MityaP ©   (2003-04-08 19:38) [6]

А скопировать процедуру - пару мгновений... Токо типы поменять... в оглавлении..


← →
sts   (2003-04-08 20:30) [7]

где вы, где, темплэйты ... 8)



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.013 c
1-67390
anbezr
2003-04-10 14:15
2003.04.21
TForm1 = class(TMyForm) - в Object inspector не видно свойств


4-67640
Aleksey Girshovskiy
2003-02-19 12:43
2003.04.21
Как получить на что открыт файл (read write...) через сеть?


3-67180
Shirson
2003-04-03 13:33
2003.04.21
В чём грабли с createBlobStream?


1-67356
romychk
2003-04-08 23:24
2003.04.21
Планирование событий


4-67635
aga
2003-02-21 19:29
2003.04.21
Explore.exe




   Наверх