Я пишу модуль расширения C / C ++ для других языков и использую SWIG для генерации привязок.
У меня два вопроса
Могу ли я включить более 1 файла заголовка в часть объявления файла интерфейса, например ::10000
/ * Объявления, выставленные для обёртки: * /
> %{
> #define SWIG_FILE_WITH_INIT
> #include "a.h"
> #include "b.h"
> #include "c.h" %}
Во всех примерах, которые я видел до сих пор, после объявления заголовка (как показано выше) функции, объявленные в заголовке, затем снова объявляются в файле интерфейса. Действительно ли это необходимо, так как это означает, что необходимо сохранить две копии объявлений функций.
Примечание: Я могу оценить, что некоторые объявления функций / методов, возможно, должны быть «украшены» декларацией «newobject», поэтому они, очевидно, должны быть в файле интерфейса, чтобы избежать утечек памяти - однако Я хотел бы знать, что было бы достаточно включить заголовки, а затем ТОЛЬКО объявления функций / методов, которые должны быть объявлены с помощью 'newobject' - это рекомендуемый способ действий?