C 提供 FUNCTION 巨集來擷取目前正在執行的函數的名稱。同樣,開發人員經常想知道是否存在一個等效的巨集來取得類別名稱,類似於 __CLASS__。
答案在於探索 C 語言設計的替代方案。以下是一些可行的選項:
自訂巨集:開發人員可以定義自訂巨集來擷取所需的資訊。例如:
對於方法名稱擷取:
#define __METHOD_NAME__ methodName(__PRETTY_FUNCTION__) inline std::string methodName(const std::string& prettyFunction) { // Extract the method name from __PRETTY_FUNCTION__ ... }
對於類別名稱擷取:
#define __CLASS_NAME__ className(__PRETTY_FUNCTION__) inline std::string className(const std::string& prettyFunction) { // Extract the class name from __PRETTY_FUNCTION__ ... }
這些自訂巨集模擬功能CLASS,但需要仔細考慮處理特殊情況,例如沒有類別上下文的方法或全域函數。
以上是C 中是否有用於類別名稱擷取的 __CLASS__ 巨集?的詳細內容。更多資訊請關注PHP中文網其他相關文章!