Cтраница 2
В случае, если одно из полей записи само является записью ( и снова содержит поля-записи), можно распространить оператор присоединения на несколько полей вглубь, перечислив их через запятую. [16]
Для сокращения длины имен при неоднократном обращении к одному и тому же полю записи или к нескольким полям одной записи удобно использовать оператор присоединения. [17]
В корректной программе, соединяющей в себе и цикл и оператор присоединения, нужно поместить оператор присоединения в цикл, вместо того чтобы помещать цикл в оператор присоединения. [18]
Если нужно обращаться к нескольким компонентам одной записи, надоедает многократно указывать имя записи. Модула-2 позволяет при помощи оператора присоединения выделять какую-нибудь одну запись. [19]
Кроме экономии места при написании программы, оператор присоединения оказывается еще полезным компилятору по той причине, что ссылка на запись в этом случае подготавливается им только один раз. [20]
Оператор присоединения позволяет использовать вместо составных имен непосредственно имена полей. При этом имя записи выносится в заголовок оператора присоединения. [21]
Переменная типа запись может участвовать только в операциях присваивания лхо поле записи может принимать угчастие во всех операциях, применимых к типу этого поля. Для облегчения работы с полями записей в языке вводится оператор присоединения. [22]
Оператор присоединения ( WITH) играет в этой программе особую роль. Если страницы и на самом деле расположены во вторичной памяти, что, разумеется, необходимо в больших базах данных, то оператор присоединения, кроме того, можно интерпретировать как запрос на пересылку указанной страницы в оперативную память. Каждое обращение к search предполагает пересылку только одной страницы в оперативную память, а всего для дерева из N элементов потребуется максимум k - lognN рекурсивных обращений. Следовательно, мы должны иметь возможность накапливать в основной памяти до k страниц. На самом же деле нам надо хранить даже более чем k страниц, поскольку включение может приводить к их разделению. Кроме того, ясно, что корневую страницу лучше всего постоянно хранить в оперативной памяти, так как е нее всякий раз начинается любой поиск. [23]
Использование оператора присоединения позволяет получить несколько преимуществ. Собирается вместе группа связанных по смыслу операций, что облегчает понимание программы. Оператор присоединения часто делает доступ к компонентам записи более эффективным. Выигрыш в эффективности особенно важен при работе с массивами записей и динамическими записями ( см. гл. [24]
Оператор присоединения позволяет использовать вместо составных имен непосредственно имена полей. При этом имя записи выносится в заголовок оператора присоединения. Программа получается компактнее, а транслятор при использовании оператора присоединения подготавливает ссылку на запись один раз. [25]