ПРИВІТ,
Мені було цікаво, як я можу використовувати C ++ бібліотеки в Objective C ?? Чи потрібно мені перетворювати його на об'єктивний C + + або я можу використовувати їх прямо?
Я прочитав кілька постів, які задають подібне питання, але вони мають бібліотеки для конкретної речі, як мережа, Мої бібліотеки для графіки.
Крім того, як би я перевірити, яка функція бібліотеки підтримується і який не є ??
Відповіді:
1 для відповіді № 1Так, вам потрібно буде викликати потім від і використовуватиC ++ heders у файлі Objective C ++, але це просто файл Objective C з розширенням .mm, який використовує синтаксис C ++, а не C. Методи та функції (якщо функції оголошують extern "C") можна викликати з Objective C. Будь-які класи C ++ можна використовувати лише у файлах Objective C ++, якщо тільки вони не передаються до покажчиків void *, які передаються через об'єктиви C.
Інструменти розробників Xcode / OSX будуть керувати цими відмінностями автоматично.
0 для відповіді № 2
Objective-C ++ працює саме так, як ви сподіваєтеся - ви назвіть файл за допомогою a .mm
, а потім commix код, написаний на двох мовах. Включаючи попередньо скомпільовану бібліотеку C ++, вона прекрасно працює з файлу .mm.
-1 для відповіді № 3
Посилання на об'єктний код з компілятором.