我想在運行時在C/C++代碼中的Xcode中顯示自定義錯誤消息。這可以用於自定義assert()函數。在Xcode的特定行上顯示運行時錯誤消息
我想顯示信息的內聯,就像SenTestingKit作用:
現在我能做的唯一的事情就是用__builtin_trap
停在正確的路線。但是沒有顯示自定義錯誤消息。
我想在運行時在C/C++代碼中的Xcode中顯示自定義錯誤消息。這可以用於自定義assert()函數。在Xcode的特定行上顯示運行時錯誤消息
我想顯示信息的內聯,就像SenTestingKit作用:
現在我能做的唯一的事情就是用__builtin_trap
停在正確的路線。但是沒有顯示自定義錯誤消息。
我不熟悉和Xcode但這裏是它是如何做幾乎其他任何地方。 您的自定義斷言看起來就像這樣:
#define MY_ASSERT(a1, a2, desc, ...) {\
PrintAssertMessage(...); \
DebugBreak(); \
}
在窗戶有已經在WIN32 API將DebugBreak功能。 在Linux和運行IA32/X64的大多數其他系統中,您可以簡單地調用作爲斷點陷阱的int 3。
asm ("int 3");
,我讀了在Xcode是:
__asm {int 3}
或
__asm__("int $3")
或
__asm__("trap")
在任何情況下,本應通過禁用宏包圍宏在調試版本中斷言在定義如何導致一個斷點。
甚至有即用功能('__builtin_trap'),其功能類似於跨平臺陷阱。當然,您可以添加消息框或控制檯輸出。但是這*不回答原始問題,那就是如何在Xcode中內聯顯示這條消息。 –
你的問題不清楚。嘗試提供更多信息或示例。 –
@AdamBurry我更新了我的問題。 – Wojtek
永久消息會好嗎?如果是這樣,請使用#pragma消息(您的消息來自assert),並在該行上引用SIGTRAP或使用__builtin_trap。 – xryl669