Использование с++ класса из чистого си [закрыт]

119
13 сентября 2019, 16:20

Имеется плюсовая библиотека. И требуется написать обёртку к парочке ее функций. Но написать на Си. Как в общем случае такое реализуется? То есть, как нужно строить мосты между классами плюсов, и (вероятно) структурами Си? (Дело идет о андроидной либе Oboe. Ответ в интернетах найти не смог).

Answer 1

Смотрите в сторону Android NDK и JNI при создании проекта можно указать поддержку С++ он сгенерит для вас native метод как пример и стандартную либу. С помощью System.loadLibrary("имя вашей либы") подгрузить либу и реализовать через JNI доступ к ее методам. В вашем примере для OBOE еще проще и есть полный туториал через CMAKE и примером и даже JNI кусок прописан https://github.com/google/oboe/blob/master/docs/GettingStarted.md

READ ALSO
Сложение двоичного кода заданного 2 массивами C++

Сложение двоичного кода заданного 2 массивами C++

Код приведенный ниже выполняет сложение 2 массивов которые являются двоичными числамиДолго думал над данным кодом, но что-то пошло не так

113
Почему не меняется адрес функции в разделе импорта?

Почему не меняется адрес функции в разделе импорта?

Написал код для смены импортируемого адреса CreateProcessW на свойЕсли я пытаюсь поменять адрес импортируемой функции в своем процессе (CLIENT

155
Как замедлить кручение объекта по своей оси в Box2D?

Как замедлить кручение объекта по своей оси в Box2D?

Квадрат падает под углом, отскакивая от земли он крутится, но крутится бесконечно, а нужно что бы его кручение замедлялось, как это сделать?

125
Демон оповещений (фоновая программа) на Java

Демон оповещений (фоновая программа) на Java

Недавно начал изучать тему ботов ВК, Телеграм и других соц сетейУ них есть одна проблема: чтобы увидеть оповещение об появлении новой информации...

145