2010-09-10 4 views
125

Что такое Objective C++ и могу ли я использовать этот язык в Xcode?Что такое Objective C++?

+4

https://sergworks.wordpress.com/2012/09/26/why-stackoverflow-sucks/ –

+0

Тесная причиной «трудно сказать, что в настоящее время вопроса» была старше причиной закрытия вопроса. В наши дни причина была бы «слишком широкой», поскольку ОП - это действительно два разных вопроса. Во-первых, объяснение Objective C++ потребует нескольких страниц для адресации, а во-вторых, кодирование для iOS специально выполняется с использованием Objective C, а XCode является IDE по умолчанию для разработки iOS, поэтому, несмотря на то, что эти два связаны друг с другом, это слишком большой вопрос. Эти вопросы необходимо перенести на сайт документации. –

+0

@ DaveVoyles-MSFT: Мне тяжело воспринимать кого-то всерьез, кто думает, что вопрос, связанный с вопросом, и механизированное, промышленное, организованное, систематическое массовое убийство более 6 миллионов человек - одно и то же. –

ответ

122

Objective-C++ - это просто исходный код, который смешивает классы Objective-C и классы C++ (два совершенно несвязанных объекта). Ваш код на C++ будет работать, как и раньше, и полученный исполняемый файл будет связан со средой выполнения Objective-C, поэтому ваши классы Objective-C также будут работать. Вы можете определенно использовать его в XCode - назовите свои файлы с расширением .mm.

Кроме того, вы можете прочитать Apple's (sadly deleted, but archived) documentation on Objective-C++.

27

Objective-C++ - Objective-C (возможно, с Cocoa Framework) с возможностью связывания с кодом C++ (вероятные классы).

Да, вы можете использовать этот язык в Xcode для разработки для Mac OS X, iPhone/iPodTouch, iPad. Он работает очень хорошо.

Вам не нужно ничего делать в проекте, чтобы использовать Objective-C++. Просто назовите свои файлы Objective-C с расширением .mm (вместо .m), и вам хорошо идти.

Это моя любимая архитектура: разработка базового класса библиотеки моей игры/приложения в C++, так что я могу использовать его на других платформах (Windows, Linux) и использовать какао только для iPhone/IPad UI конкретных вещей.

+9

Его не касается * ссылки * на C++ - вы имели в виду * mix *? –

5

Если вы хотите использовать Objective-C++, но не хотите называть свои файлы .mm, то я отвечу на вопрос similar question.

без изменения .m к .mm или что-нибудь подобное, если вы нажмете ваш проект, нажмите tagets-> построить настройки пройти весь путь вниз к «LLVM GCC 4.2 - Языки» (новый xcode говорит «Apple LLVM компилятор 4.2») вы увидите Скомпилировать источники Как изменить это значение на Objective-C++;

+3

, в то время как вы можете это сделать, это не так переносимо и может смущать того, кто пытается поддерживать ваш код, где .s является заголовком, а .r - файлами реализации. –

+0

где вы тянете .s и .r? Вы можете использовать стандартный .m для файла метода и .h для заголовка так же, как если бы вы использовали обычный Objective-c. –

+0

Я просто так говорю.m означает что-то, и для того, чтобы это означало, что-то еще не стандартно. –

Смежные вопросы