Как я могу использовать простой код C++ в Haxe Project?

У меня есть класс в cpp, как:

class Foo{
private:
    int x;
public:
    Foo(){x = 0;}
    int incr();
};

int Foo::incr(){
    x++;
    return x;
}

В любом файле.hx я хочу использовать класс Foo, который определен в cpp следующим образом:

var number:Int;
// Some codes to create foo_1 object "Foo foo_1;"

// Some codes to call "number = foo_1.incr();"
trace("x is:" + number);
// Some codes to call "number = foo_1.incr();"
trace("x is:" + number);

Ожидаемый результат

x is:1
x is:2

Как примечание, я искал и читал некоторые документы о hxcpp и Haxe CFFI, но некоторые части этих документов слишком сложны. Я новичок в Haxe, и мне нужны простые и простые шаги для решения этой проблемы. Благодарю.

1 ответ

Я попытался заставить это работать один раз для исследовательского проекта, и это было далеко не просто. Документация довольно скудная и не хватает реинжиниринга hxcpp, дальше мало что можно продолжить.

Тем не менее, насколько я знаю, extern классы являются единственным способом прямого доступа к объектам C++ из Haxe. Не без некоторых лесов, хотя.

Вы можете прочитать об опыте одного парня здесь.

Другие вопросы по тегам