Как я могу проверить тип CFPropertyList? - PullRequest
1 голос
/ 10 марта 2011

При использовании API CFPreferences для хранения и извлечения настроек приложения для пользователя и компьютера в Mac OS X, CFPreferencesCopyAppValue возвращает CFPropertyListRef для представления извлеченной настройки.

Я могу 'Кажется, я не могу найти код, который позволяет мне безопасно проверить, что CFPropertyList на самом деле CFString, поэтому я могу доверять, что результатом будет искомая строка.

Какой правильный метод для преобразования объектов CFPropertyListобратно в CFString / CFNumber / CFWhateverElse?

1 Ответ

1 голос
/ 10 марта 2011

Вы можете использовать функцию CFGetTypeID:

if (CFGetTypeID(myPropertyListRef) == CFStringGetTypeID()) {
    // it's really a string!
}
...