Можно ли построить реализацию Objective-C ++ из заголовка C ++? - PullRequest
0 голосов
/ 04 апреля 2011

У меня есть фреймворк C ++, который я хотел бы использовать в Objective-C ++.Я работаю в XCode4 и нацеливаюсь на развертывание iPad.

Итак, учитывая этот (псевдокод) заголовок C ++:

class A {
public:
    virtual int doSomething(int i) = 0;
private:
    int _i;
}

Для этого конкретного экземпляра мне нужно doSomething отправить что-точерез Grand Central Dispatch.

У меня проблемы с поиском решений для реализации заголовков C ++ в Objective-C ++.Возможно ли это сделать?Если да, может ли кто-нибудь привести отличный пример?

Спасибо!

1 Ответ

2 голосов
/ 04 апреля 2011

Вы можете использовать фреймворк C ++ в Objective C ++ как есть.Просто включите файлы .h и начните создавать экземпляры классов.

Чтобы убедиться, что ваши исходники компилируются как ObjC ++, а не ObjC, убедитесь, что ваши источники имеют расширение .mm.

Цель C ++странный зверь - у него две системы классов / объектов, работающие рядом.У вас могут быть функции C ++, вызывающие методы ObjC, и наоборот.Что вы не можете сделать, однако, вы не можете получить классы Objective C из классов C ++ и наоборот.

У меня сложилось впечатление, что вы хотите преобразовать библиотеку классов C ++ в библиотеку классов ObjC.Это было бы довольно много времени.

...