Есть действительно что-то вроде Objective C++?

Я читаю пост о программировании для iPhone и заметил, что разговоры о цели C++, код, показанный в посте, в основном похож на Objective-C, но также есть несколько фрагментов на C++. Реально ли запрограммировать Cocoa на C++?


person tunnuz    schedule 20.01.2009    source источник


Ответы (5)


В дополнение к другим комментариям я бы добавил, что Objective-C++ не совсем то же самое, что «программировать Cocoa из C++», потому что здесь нет моста C++ для Cocoa.

В Objective-C++ вы программируете Cocoa API полностью с объектами/синтаксисом Objective-C. Cocoa API остается неизменным, поэтому вам нужно взаимодействовать с ним таким же образом (используя строки Objective-C, массивы Objective-C и объекты Objective-C).

Разница с Objective-C++ по сравнению с обычным Objective-C заключается в том, что вы можете также использовать объекты C++ (содержащие объекты Objective-C, содержащиеся в объектах Objective-C или просто рядом с объектами Objective-C). объекты).

person Matt Gallagher    schedule 20.01.2009
comment
Использовать его все время — иногда это может быть неудобно, но в целом отлично подходит для кроссплатформенности, повторного использования существующего бизнес-кода, библиотек с открытым исходным кодом и т. д. - person Jay; 27.03.2013

да. По сути, Objective-C — это набор расширений объекта C++, подобных Smalltalk. Objective C++ — это результат применения тех же самых расширений к C++. Это оставляет вам язык с двумя разными объектными моделями.

Среда разработки Apple xcode предоставляет компиляторы Objective-C и Objective-C++.

person Darron    schedule 20.01.2009
comment
Мне кажется, или перспектива написания кода в среде с двумя разными объектными моделями звучит как рецепт катастрофы для всех остальных? - person Michael Kohne; 21.01.2009
comment
Может быть, если бы за разработку отвечала другая компания. У Apple есть история своевременного выпуска качественного программного обеспечения. - person calvinlough; 05.01.2010


На самом деле это пасхальное яйцо в документации Apple, чтобы проверить, читает ли кто-нибудь — тот же человек написал всю документацию по WebScript в руководствах WO4.

Да, есть Objective-C++.

person Community    schedule 20.01.2009

Да, есть.

person Hank Gay    schedule 20.01.2009