Метод C ++ вызывается из DLL, возвращает данные из предыдущего вызова в Adobe Air National расширений

StackOverflow https://stackoverflow.com/questions/9457009

Вопрос

Я испытываю странную проблему .i написал нативное расширение для Adobe Air App. Это код C ++, собранный в DLL с VS2010. У меня есть метод, к которому я передаю массив номеров, а затем получить массив результатов. Затрагиваю время, когда я позвоню этот метод, он возвращает правильный массив с правильными данными и длиной. Но если яВызовите этот метод в ряд дважды, второй раз, когда массив содержит оба - данные из первого вызова, а со второго. Это так, как если бы DLL будет кэшировать данные из предыдущего call.i очистить все .also Все переменныеявляются локальными и очищенными / уничтожены после завершения позвоночника метода.Может быть мои настройки для компиляции DLL ошибочно, так как я не C ++ Guru. Спасибо за помощь заранее.

Обновление: Я нашел решение. Пришлось сделать с «Extern 'C» «Whinter, которую я забыл добавить в мои методы C ++.

Это было полезно?

Решение

Я нашел решение. Пришлось делать с «Extern 'C» Whinter, которую я забыл добавить в мои методы C ++.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top