Просматривая пример кода для FunkyOverlayWindow , я только что нашел довольно интересное объявление:
pascal OSStatus MyHotKeyHandler(
EventHandlerCallRef nextHandler,
EventRef theEvent,
void *userData
);
Здесь pascal
выделяется как ключевое слово (розовый в стандартной цветовой схеме Xcode). Но я только что обнаружил, что это макрос, достаточно интересно определенный в файле CarbonCore / ConditionalMacros.h как:
#define pascal
Так, что (или должно было) это сделать? Может быть, это было какое-то специальное использование в прошлом?
Хотя это обсуждение может не подходить здесь, было бы интересно узнать, почему Apple все еще использует Carbon, если это относится к ответу. У меня нет опыта работы с Carbon, но этот код, по-видимому, устанавливает обработчик событий клавиатуры, что заставляет меня задуматься, есть ли какие-то преимущества по сравнению с подходом Cocoa. Не удастся ли когда-нибудь полностью удалить углерод?