В чем разница между IEditableObject и IRevertibleChangeTracking?

Я хотел бы вызвать файлы сценариев python из моей программы на C ++.

blockquote>

Это означает, что вы хотите встроить Python в свое приложение на C ++. Как упоминалось в Embedding Python в другом приложении :

Вложение Python аналогично расширению, но не совсем. Разница в том, что при расширении Python основная программа приложения по-прежнему является интерпретатором Python, а если вы вставляете Python, основная программа может не иметь ничего общего с Python - вместо этого некоторые части приложения иногда называют интерпретатором Python для запуска кода Python.

blockquote>

Я предлагаю вам сначала перейти через Вложение Python в другое приложение . Затем см. Следующие примеры

  1. Вложение Python в C / C ++: Часть I
  2. Вложение Python в C / C ++: Часть II
  3. Вложение Python в многопоточных приложениях C / C ++

Если вам нравится Boost.Python , вы можете посетить следующие ссылки:

  1. Вложение Python с Boost.Python Часть 1
24
задан Enrico Campidoglio 3 June 2010 в 23:08
поделиться

1 ответ

Эти два интерфейса не являются взаимоисключающими. Они просто предназначены для поддержки различных, но несколько связанных сценариев, которые с тем же успехом могут быть реализованы одним и тем же классом. Вот краткое объяснение:

Интерфейс IEditableObject

Интерфейс IEditableObject предназначен для поддержки сценария, в котором объект должен управлять своим внутренним состоянием определенным образом, пока он редактируется.

По этой причине интерфейс включает методы, которые явно отмечают, когда фаза редактирования начинается, завершается или прерывается, так что соответствующие действия могут быть предприняты для изменения состояния объекта на этих этапах.


Интерфейс IRevertibleChangeTracking

Интерфейс IRevertibleChangeTracking разработан для поддержки сценария, когда объект должен иметь возможность отката к предыдущему состоянию.

Интерфейс имеет методы, которые отмечают, когда текущее состояние объекта должно стать постоянным или должно быть возвращено к последнему известному постоянному состоянию.

26
ответ дан 29 November 2019 в 00:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: