Оператор in возвращает истинное значение (True), когда значение элемента порядкового типа является элементом типа множества, в противном случае он возвращает значение False (ложное).
Операция @
С помощью операции @ можно создать указатель на переменную. Операция @ является унарной, в качестве ее операнда используется ссылка на идентификатор переменной, процедуры или функции; операция возвращается указатель. Тип этого значения является таким же, как тип указателя nil, и, таким образом, его можно присвоить любому указателю.
^
Создание множеств
Создание множества определяет значения типа множество и получается путем записи выражений, заключенных в квадратные скобки [ ]. Каждое выражение определяет значение множества.
Обозначение [] создает пустое множество, тип которого совместим по присваиванию с типом любого множества. Любая группа элементов, объявленная, как X..Y, объявляет элементами множества все значения в диапазоне X..Y. Если X больше, чем Y, то X..Y не описывает никаких элементов и [X..Y] обозначает пустое множество.
|
|
В конкретном описателе множества все значения выражений в группе элементов должны иметь один и тот же порядковый тип.
Примеры создания множеств:
[Red, C, Green]
[1, 5, 10..K mod 12, 23]
['A'..'Z', 'a'..'z', chr(Digit + 48)]
^
Совместимость типов
Иногда, например, в выражениях и операциях сравнения требуется совместимость типов. Совместимость типов, кроме того, является важной предпосылкой для совместимости при присваивании.
Совместимость типов имеет место, если выполняется, по крайней мере, одно из следующих условий:
оба типа являются одинаковыми.
оба типа являются вещественными типами.
оба типа являются целочисленными.
один тип является поддиапазоном другого.
оба типа являются поддиапазонами одного и того же основного типа.
оба типа являются типами множеств с совместимыми базовыми типами.
оба типа являются упакованными строковыми типами с одинаковым числом компонент.
один тип является строковым, а другой тип является или строковым типом, или упакованным строковым типом, или типом Char.
один тип - Pointer, а другой является любым типом указателя.
^