Мне было интересно, может ли кто-нибудь помочь мне с привязкой для класса C ++, который принимает в качестве конструктора std::vector<T>
в Emscripten. Я хотел бы что-то вроде следующего:
EMSCRIPTEN_BINDINGS(my_class) {
emscripten::class_<test_class>("test_class")
.constructor<std::vector<float>>()
.property("x", &test_class::get_x, &test_class::set_x)
;
}
Я прочитал этого поста и реализовал прокси-функцию для переноса моего массива с плавающей запятой JS, созданного var inputArray = new Float32Array([1,2,3]
, в std::vector<float>
.
Однако, когда я использую inputArray
в качестве параметра для конструктора класса, я получаю следующее предупреждение:
5258048 - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch.
Я добавил флаг DISABLE_EXCEPTION_CATCHING=2
к шагу emcc
, однако это не дает никакого другого результата.
Кто-нибудь еще придумал решение?