(iOS) Как я могу получить UIViewController из приложения C ++?

Мне нужно использовать библиотеку в моем проекте C ++, которая должна вызывать функцию extern:

SetGameViewController(UIViewController* gameViewController)

У меня пока нет нулевых знаний о Objective C и iOS. Мне нужно получить UIViewController и передать его этой функции.

Так что этот код должен получить UIViewController:

UIWindow *window = [UIApplication sharedApplication].keyWindow;
UIViewController *rootViewController = window.rootViewController;

Я также добавил этот импорт:

#if defined(OS_IPHONE)
#import <UIKit/UIKit.h>
#endif

Я получаю ошибки компилятора, такие как:

Expected unqualified-id
Unknown type name 'NSString'

Я начал изучать Цель C и прочитал несколько статей, но пока не смог продвинуться дальше.
Поэтому в основном мой вопрос заключается в том, как мне в основном импортировать и использовать код Objective C в коде C ++, чтобы я мог получить и использовать UIViewController?

0

Решение

Самый простой способ — переименовать исходный файл с расширением «.mm» — тогда он будет скомпилирован как target-c ++, что означает, что вы получаете все чудеса c ++, в то же время имея возможность взаимодействовать с объектами Objective-C (подсчитанными указателями). к вещам, «производным» от NSObject).

3

Другие решения


По вопросам рекламы [email protected]