Понятие "первоклассный гражданин" или "первоклассный элемент" на языке программирования было представлено британским программистом Christopher Strachey в 1960-х в контексте первоклассных функций. Самая известная формулировка этого принципа находится, вероятно, в Структура и Интерпретация Компьютерных программ (незадолго до Exercise 1.40
) Gerald Jay Sussman и Harry Abelson:
В основном, это означает, что можно сделать с этим элементом языка программирования все, что можно сделать со всеми другими элементами на языке программирования.
У вас по-прежнему должна быть возможность вызывать UpdateSystemActivity
из вашего приложения Какао - оно не было помечено как устаревшее.
Документация для API определяет импорт ] CoreServices / CoreServices.h
, чтобы получить API - однако поиск по заголовкам (особенно в OSServices / OSServices.h
) показывает, что файл отсутствует в 64-битной среде. Тем не менее, есть разделы Power.h
(где определено UpdateSystemActivity
), которые отключены для 64-битных версий, и UpdateSystemActivity
не входит в их число.
] В свете этого попробуйте #import
напрямую и посмотрите, работает ли это. (Вы'
Проблема здесь, по-видимому, в строке в OSServices.h, которая исключает Power.h, если определено __LP64__. При сборке 64-битной версии на 10.5 UpdateSystemActivity действительно не определен.
Хорошая новость заключается в том, что этот символ действительно существует в CoreServices.framework. Есть два способа получить к нему доступ.
Я не иметь под рукой копию SnowLeopard, но следующее, что нужно сделать, это проверить, исправлена ли она там. Если это не так, зарегистрируйте RADAR, поскольку это явно ошибка SDK.