C ++ с разработкой плагина Qt4 - PullRequest
0 голосов
/ 01 декабря 2010

В последнее время я играю с платформой плагинов, предоставляемой Qt4 Framework, и она отлично работает. Однако есть одна вещь, в которой я не уверен.

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

Моя цель - предоставить сторонним разработчикам только файл общей библиотеки, который они затем могут «импортировать» (извините за терминологию Java) в свой код для создания плагинов для приложения. Нечто похожее на простой файл .jar на Java, который затем может импортировать разработчик.

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

Буду признателен за любое движение в правильном направлении.

Спасибо!

1 Ответ

1 голос
/ 01 декабря 2010

C ++ не допускает столько интроспекции, как Java, поэтому вы не можете просто отправить «двоичные файлы» и вывести интерфейс из этого.В C ++ вам нужно текстовое описание интерфейса (файлы заголовков).

Кто-то, кто хочет разработать плагин для вашего приложения, должен иметь доступ к

  1. файлу заголовкаинтерфейс плагина
  2. все заголовочные файлы для классов, используемых в интерфейсе вашего плагина.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...