11.6 Упражнения |
Предыдущая Содержание Следующая |
Для синтаксического анализатора ooc не имеет абсолютно никакого значения, описаны ли методы класса до или после динамически компонуемых методов в файле описания класса, то есть предшествует ли %+, или следует за %-. Есть, однако, убедительный аргумент в пользу расположения, описанного в этой главе. Почему разделители не могут повторяться для произвольного расположения обоих типов методов? Есть довольно значительная разница, если delete() реализован с динамической связью. Что больше не может передаваться в delete()? Пользы от перемещения value() обратно в абстрактный базовый класс Symbol и предоставления ему динамической компоновки нет. mathvalue() применяется к символу Math и требует аргумент в виде функции, value() применяется к символу Var или Const и не нуждается в параметре. Должны ли использоваться списки с переменным числом аргументов? Можно обнаружить рекурсию среди определяемых пользователем функций. Можно использовать такие слова, как $1, для функций поддержки с более чем с одним параметром. Можно даже добавить параметры с именами, которые скрывают глобальные переменные. Если мы добавим неопределённый указатель к области данных Class в методах класса Object.d, то сможем подключить туда цепочку закрытый областей данных. Это может использоваться, например, чтобы считать объекты или обеспечить списки объектов в классе.
|
Предыдущая Содержание Следующая |