Как использовать namspace в iphone SDK - PullRequest
0 голосов
/ 24 августа 2010

возможно, я глупый, но я не могу понять, как использовать пространства имен в iphone SDK.Пожалуйста, кто-нибудь может мне помочь.в основном мне нужно знать, где определить пространство имен в файлах, я предполагаю в заголовке, но где?Я продолжаю получать ошибки.

Ответы [ 6 ]

3 голосов
/ 24 августа 2010

Как говорит Даниэль А., в Objective-C нет пространств имен.

Обычная практика - и рекомендованная Apple - заключается в том, чтобы вы ставили перед своими фреймворками / пакетами трехбуквенные коды. Apple использует такие вещи, как UI Kit, NS String и т. Д.

Чтобы вы могли использовать DTHCoolClass и т. Д.

3 голосов
/ 24 августа 2010

Objective-C не имеет пространств имен.

1 голос
/ 24 августа 2010

Как уже упоминалось, Objective-C не имеет пространств имен.Apple рекомендует префиксить имена классов 2 или 3 буквами, обозначающими проект, инфраструктуру или разработчика.

На практике префикс префикса зависит от того, о каком классе вы говорите и как его можно использовать.

Я префикс всех классов модели и утилит, так какимена могут конфликтовать с библиотеками Apple (или сторонних) (например, использовать NFResourceManager вместо ResourceManager и NFRecord вместо Record).Такие классы могут быть выведены в другую инфраструктуру проекта на каком-то этапе в будущем, поэтому их префикс позволяет вам сохранять однозначные имена.

Я почти никогда не префиксирую контроллеры представления, если не думаю, что есть хороший шансЯ буду использовать это в другом месте, или хочу поделиться им.Большинство VC не будут использоваться где-либо еще, так что нет префикса от преимуществ (и вы вряд ли импортируете код из сторонней библиотеки, содержащей VC).

Для большинства классов представлений я ставлю префиксих, если это не очень специфично для конкретного проекта / приложения, в этом случае нет особого смысла.

1 голос
/ 24 августа 2010

Objective-C не имеет пространств имен. Что люди делают, это префикс своего кода с некоторыми заглавными буквами. Как инициалы или сокращение названия продукта. Лично я ненавижу это, и я использую нормальные имена как SignUpViewController вместо SMASignUpViewController.

По моему мнению, мир был бы лучше, если бы разработчики приложений отказались от префиксов. Я в порядке с библиотеками, использующими это.

0 голосов
/ 25 августа 2010

Я немного глуп, я пытался создать пространство имен в неправильном месте

0 голосов
/ 24 августа 2010

Если вы пытаетесь использовать пространственный код C ++ в файлах obj-C, вам нужно переименовать исходные файлы, чтобы Xcode использовал компилятор C ++.Переименуйте соответствующие файлы .m в .mm, и вы сможете использовать пространства имен C ++.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...