2012-06-15 3 views
3

Я запускаю в Xcode 4.3.3 проект iOS с некоторыми классами C++.Xcode: точки останова в файлах заголовков C++, кажется, игнорируются

Когда я запускаю его в режиме отладки, точки останова в файлах заголовков C++, похоже, игнорируются. Так, например, штрих-код на третьей строке этого кода не работает:

class myClass : public Reader { 
    private: 
     static const int INTEGER_MATH_SHIFT = 8; 

Я ожидаю код разорвать на постоянной уступки, или я ошибаюсь? Спасибо

+0

Какая версия Xcode? –

+0

@PaulR XCode 4.3.3 – aneuryzm

+0

Вопрос и теги обновлены. –

ответ

3

Точку останова можно установить только на исполняемый код. Инициализация объекта со статическим временем жизни с постоянным выражением не генерирует исполняемый код (и, хотя вы указываете назначение, в коде, который вы отправили), нет назначения. Фактически, в частном случае константы интегрального типа, вполне вероятно, что объект вообще не существует, если вы не берете его адрес.

+1

Спасибо. Почему вы говорите, что у вас нет заданий? Я думал, что я использую оператор присваивания «=» – aneuryzm

+1

В вашем коде нет оператора присваивания. В объявлении знак '=' не является оператором, а просто частью грамматики, и это не означает назначение, а просто указывает, что будет выполняться выражение инициализации (для инициализации копирования). –

0

AFAIK, точки останова могут быть установлены только в командных строках, не входящих в задания. Если вы установите точку останова при назначении в файле реализации, она остановится на следующей строке оператора

+0

Вы можете установить точку останова при назначении; Я делаю это все время. Но в его коде нет заданий. –

+0

@JamesKanze Почему вы говорите, что у вас нет заданий? Я думал, что использую оператор присваивания «=». – aneuryzm

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