Ошибка при добавлении файла target-c в Firebreath. невозможно вызвать obj-c из c ++

0

Я работаю над созданием плагина для mac с использованием Firebreath, который я кодировал в c++, но я тоже хочу использовать obj-c. Я новичок в объектах c и Firebreath. Я не знаю, как добавить файлы.m или.mm. скажите, пожалуйста, как это сделать, мне нужно вызвать функции, написанные в объективе c из c++, используя firebreath.

Теги:
firebreath

2 ответа

2

Это основной поток, который я знаю.

Objective C ->.mm реализация файла → c++.

1

Это в основном не связано с firebreath, это скорее вопрос использования объективных c++ и c++ в одном проекте.

Основные эмпирические правила:

  • Чтобы включить файл.m или.mm в проект, просто настройте cmake для их включения. это сделает все остальное.
  • Вы не можете включить какой-либо объектный код c/c++ в файл.h, который будет включен в обычные файлы.c или.cpp, если вы не защитите его с помощью #ifdef __OBJC__
  • Вы можете использовать объектив C из класса c++ внутри файла.mm
  • В основном то, что вы делаете, это создание класса c++, который может использоваться другими файлами cpp, но обертывает требуемые функциональные возможности c. Все, что должно быть в файле.h, специфичном для obj c, находится в файле #ifdef а все остальное находится в файле.mm

Надеюсь, это поможет. См. WebViewMac.h и WebViewMac.mm в источнике FireBreath для примера этого метода.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню