2013-01-24 20 views
1

我們辦公室的某些機器在編譯XCode中的項目時會標記構建錯誤,因爲它們正在進行宏擴展並發現合法錯誤。其他機器不會進行擴展,也不會捕獲這些錯誤。必須有一個選項來啓用/禁用XCode中的某處。我找不到它,有人熟悉這個嗎?如何在XCode中啓用/禁用宏擴展?

+1

每臺機器都應該構建所有代碼,對吧?或者你有系統特定的'#ifdef'在那裏? –

+0

確實存在一堆點中的ifdefs,但我試過在至少兩臺機器上構建相同的構建配置。一個是宏擴展,另一個沒有標記錯誤。 –

+0

你能告訴我們這些宏有時會擴展,有時不是嗎?這似乎是瘋了對我說話。代碼如何構建,除非所關注的所有宏都擴展了? –

回答

0

這是我的錯,這是因爲預處理器def。在一種情況下,宏將擴展爲一個類型常量,而另一種情況下,大多數情況下,宏使用常量作爲字符串參數擴展到函數調用。所以在一種情況下,我得到int myConstant,如果有問題,編譯器會標記它。在另一種情況下,它將是myFunc("myConstant"),它不會標記編譯器錯誤。