簡體   English   中英

無法在C ++ / Objective-C ++代碼中設置斷點

[英]Cant set breakpoint in C++/Objective-C++ code

我正在嘗試在我的目標c ++(我認為它稱為)代碼中設置一個斷點。

我已經使用#ifdef _cplusplus#endif來包裝代碼,但是當我在其中設置斷點時,它在方法主體的結尾處中斷,並且主體中的任何代碼都沒有運行。

錯誤的斷點:/

我簡化了我的代碼,但是由於cout ,我至少希望看到在控制台上打印數字。

該文件的擴展名也為.mm。 我是混合C ++和Objective-C的新手。 我有什么想念的嗎?

#ifdef是一個預處理程序指令 -簡而言之,這意味着在沒有_cplusplus #define某處的情況下,您的調試器非常聰明,可以說嘿,這是無效代碼-甚至不要嘗試對其進行調試

預處理程序偽指令是程序代碼中包含的行,其前面帶有井號(#)。 這些行不是程序語句,而是預處理器的指令。 預處理程序會在代碼的實際編譯開始之前檢查代碼,並在正則語句實際生成任何代碼之前解析所有這些指令。

這些預處理器指令僅跨一行代碼擴展。 一旦找到換行符,預處理器指令即結束。 預處理程序指令的末尾不應包含分號(;)。 預處理程序指令可以擴展多行的唯一方法是在行末的換行符之前加反斜杠()。

這些超級有用,對於一個常見示例,請快速瀏覽一下Include Guards 為了了解我的意思,請嘗試在#ifdef #define _cplusplus直接添加#define _cplusplus ,然后重試。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM