> -- Rifat писал(а):
> Как мне кажется, расширение записей идет в ногу с динамическими структурами данных. Пока не могу представить себе пример, когда используются расширенные записи без указателей на них. Если кто-нибудь может привести такой пример, то был бы рад узнать о нем.
Указатель может быть в виде VAR-параметра, без объявления типа POINTER TO. Например, расширяемые типы Reader и Writer в системе Оберон были, как правило, стековые. В этом случае их можно сделать локальными переменными либо глобальными с повторным использованием, но без необходимости динамического выделения памяти.

Значение типа POINTER всегда можно передать в VAR-параметр, но не наоборот. Тип POINTER всегда требует NEW для выделения памяти. Я хочу сказать, что VAR более универсален.

За примером тоже далеко ходить не надо. БОльшая часть сообщений в ББ, если я правильно понимаю, сделаны на стековых - расширяемых - записях. Иначе он бы память жрал постоянно, если бы вызывал NEW на каждый чих мыши и клавиатуры. Зачем они расширяемые, думаю, не надо объяснять.