Пример 11.14. Использование грани default-dynamic

(defclass A (is-a USER)

(role concrete)

(slot foo (default-dynamic (gensym))

(create-accessor read)))

Выражение, заданное в грани default-dynamic — вызов системной функции gensym. Эта функция возвращает постоянно увеличивающийся системный идентификатор genX, где X — положительное число, увеличивающееся на единицу с каждым вызовом. Грань create-accessor read обеспечивает возможность чтения значения слота объекта. (Эта грань будет подробно рассмотрена в подразд. "Грань акцессоров" данного раздела.) Очистите CLIPS и создайте несколько объектов класса A так, как представлено в приме­ре 11.15.

Пример 11.15. Создание нескольких объектов класса А

(make-instance al of A)

(make-instance a2 of A)

(make-instance а3 of A)

После этого просмотрите значения слотов foo всех экземпляров объектов класса A.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: