2010-05-18 2 views
2

Я сегодня возился с моим пространством имен Objective-C++.Размер уже определен

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

Я только #imported Foundation/Foundation.h

+0

Можете ли вы показать нам список включений, которые вы использовали? –

+0

перечисленные импорты по мере необходимости. –

ответ

6

MacTypes.h

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

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

2

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

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

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