2012-06-15 21 views
3

我在Xcode 4.3.3中運行了一個帶有一些C++類的iOS項目。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