Цитата(Tonic @ 19.02.03 13:06)
Как можно отодвигать с помощью new границу массива? Или можно создать с помощью new некую абстрацию типа, скажем, 3-х мерного массива?
Какая разница NEW, или что-то ещё? И разве без списков, коллекций, объектов нельзя написать прогу небольшого размера ;) Главное, чтобы доступ к памяти был, а уж для облекчения доступа к нему завсегда функцию написать можно. Самый прикольный вариант, когда для инициализации массива, изменения размеров, чтения, записи используется одна и та же функция
Код
FUNCTION FDSGDS(FDS,POKE,PEEK:BYTE; ADREES:LONGINT):BYTE;
....................
BEGIN
CASE FDS OF
1: ................
2: ..................
3:..........................
4:................................
.....................
END;
Вместо не нужных параметров пишутся фиктивные - нули, или любой другой мусор. На какие параметры реагировать и какую продукцию выдавать
ф-ция решает исходя из ключа FDS - инициализирует или закрывает новые сегменты памяти, читает, записывает или форматирует диск ;) Конечно, преподы за такой подход голову оторвут, или что-нибудь ещё <_< Но штука прикольная и полиморфная.
ЗЫ: Без ГОТО такая конструкция выглядит как соль без сахара.