Службы модели объекта во время выполнения
Классы CObject и CRuntimeClass инкапсулируют несколько служб объекта, включая доступ к данным, сериализации и динамическому созданию объектов класса среды выполнения. Все классы, производные от CObject наследуют эту функцию.
Доступ к сведениям о класса среды выполнения позволяет указать сведения о классе объекта во время выполнения. Возможность определить класс объекта во время выполнения полезна, когда требуется дополнительная проверка типов аргументов функции и когда необходимо написать код одноцелевой на основе класса объекта. Данные класса среды выполнения не поддерживаются непосредственно в языке C C++.
Сериализация представляет собой процесс записи или чтения содержимое объекта на или из файла. Использование сериализации для сохранения содержимое объекта даже после приложение не влияет. Объект затем можно считать из файла при перезапуске приложения. Считается, что будут такие объекты данных «постоянными.»
Динамическое создание объектов позволяет создать объект указанного класса во время выполнения. Например, документ, представление и объекты кадра должны поддерживать динамическое создание, поскольку платформе для их создания динамически.
В следующей таблице перечислены макросов MFC, которые поддерживают данные класса среды выполнения, сериализацию и динамическое создание.
Дополнительные сведения об этих служб и сериализации объекта среды см. в статье Класс CObject: Доступ к данным класса среды выполнения.
Макросы служб объектной модели среды выполнения
Обеспечивает доступ к данным класса среды выполнения (не используется в объявлении класса). |
|
Включает создание динамических и доступ к сведениям о класса среды выполнения (не используется в объявлении класса). |
|
Включает сериализации и доступ к сведениям о класса среды выполнения (не используется в объявлении класса). |
|
Обеспечивает доступ к данным класса среды выполнения (не используется в реализации класса). |
|
Включает создание динамических и доступ к сведениям о среде выполнения (не используется в реализации класса). |
|
Позволяет сериализацию и доступ к сведениям о класса среды выполнения (не используется в реализации класса). |
|
Возвращает структуру CRuntimeClass, соответствующую именованному класс. |
OLE часто требуется динамического создания объектов во время выполнения. Например, приложение должно быть способно OLE-сервера создать элемент OLE динамически в ответ на запрос от клиента. Аналогично, сервер автоматизации должен иметь возможность создания элементов в ответ на запросы от клиентов автоматизации.
Библиотеки Microsoft Foundation Class содержит 2 макроса определенного OLE.
Динамическое создание объектов OLE
Позволяет не созданные через объекты ole-автоматизации. |
|
Делает объекты не созданные системой OLE. |