Я сейчас создаю свой первый проект Swig.У меня есть некоторый код C ++, где я использую 1 из функций классов в моем C # UI.Я создал файл .i, который выглядит примерно так:
%module mymodule
%{
#include "Simulation.h"
%}
/*****************************************************************************
* SOME DEFINITIONS *
*****************************************************************************/
#define EXAMPLE_DEFINITION 'a'
#define EXAMPLE_DEFINITION_2 'x'
class Simulation
{
public:
// BUNCH OF FUNCTIONS
static unsigned int getTick();
static void tick();
// BUNCH MORE FUNCTIONS
private:
// A BUNCH MORE THINGS
};
Я добавил файлы cs, используя:
swig -c++ -csharp -outdir UI -o cpp/simulation_wrap.cpp Simulation.i
Он создает несколько файлов, которые я добавляю в мой проект на c #,в моем коде, если я добавлю строки:
Simulation.getTick();
или
Simulation.tick();
Я не получаю ошибки компиляции, но следующая ошибка времени выполнения:
The type initializer for 'mymodulePINVOKE' threw an exception.
я пропустил какие-либо шаги?Я пытался найти это, но не смог добиться успеха.
(Возможно, важно отметить, что я пытался скомпилировать c ++ как dll и lib).
Заранее спасибо