Размер уже определен - PullRequest
2 голосов
/ 18 мая 2010

Сегодня я возился с моим пространством имен Objective C ++.

Я обнаружил, что Handle, Size и Duration уже определены в ObjC ++. Что они определены и где они определены?

У меня есть только #imported Foundation / Foundation.h

Ответы [ 2 ]

6 голосов
/ 18 мая 2010

MacTypes.h

typedef char *                          Ptr;
typedef Ptr *                           Handle;
typedef long                            Size;
typedef SInt32                          Duration;

Все это предшествует углероду. Они не имеют никакого отношения к Какао, хотя и заполняют пространство имен.

2 голосов
/ 18 мая 2010

Вы можете дважды щелкнуть Command по символу в XCode, чтобы увидеть, где он определен, или использовать «Открыть быстро» (Command-Shift-D) и ввести имя символа. Handle, Size и Duration находятся, например, в инфраструктуре CoreServices.

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

...