我對RTTI知之甚少,但我相信由於您可以在運行時檢索變量的名稱。 是否有可能檢索線程當前正在運行的函數的名稱?是否有可能在C++中獲取當前(成員)函數名稱?
3
A
回答
11
對於當前函數,C++ 11標準化爲__func__
。
各種編譯器支持__FUNCTION__
,__PRETTY_FUNCTION__
和其他的變體。
2
0
號
C++的run-time type identification讓你找出一個對象的類型,但該方法的不是名稱你目前所在。
0
不,這是不可能的。 C++不支持反射(靜態或動態)(如C#)。你需要一些預處理器魔法來模擬它。
除此之外,在運行時不一定有函數/方法名稱的概念(如果使用相應的標誌編譯源代碼,則只能用作調試信息)。
相關問題
- 1. 獲取當前VBA函數的名稱
- 2. 是否有可能獲得匿名JavaScript函數的名稱?
- 3. 是否有可能在swift中獲取顏色名稱
- 4. 獲取所有當前可用的成員的名字
- 5. 是否有可能獲得D中枚舉成員的名稱和值?
- 6. 是否有可能在Poweshell中重命名類型成員名稱?
- 7. JavaScript:是否可以獲取當前名稱空間的內容?
- 8. 從C#中的函數中獲取當前執行函數的名稱
- 9. 在Python中,如何獲取成員函數類的名稱?
- 10. Go中是否有函數來打印對象的所有當前成員名稱和值?
- 11. 如何在V8中獲取當前函數的名稱或linenumbers
- 12. 是否有可能在C++中有多態成員重載?
- 13. Python生成器函數名稱 - 前綴是否有用?
- 14. 使用plpgsql獲取函數內的當前函數的名稱
- 15. 如何獲取調用當前函數的函數名稱?
- 16. 獲取當前MembershipProvider名稱
- 17. 是否有可能在ruby中使用sqlite3 gem獲取數據庫名稱?
- 18. 是否有可能在C中更改一個const struct成員?
- 19. 是否有可能在Flash(AS3)中獲取所有成員變量?
- 20. 提供函數指針訪問C++類的私有成員 - 是否有可能?
- 21. 是否有可能在IIS 7.5 URL重寫模塊規則中獲取當前機器名稱?
- 22. 是否有可能使用QtConcurrent :: run()與類的函數成員
- 23. 是否有可能將成員函數傳遞給QueueUserAPC?
- 24. 是否有可能從其他成員函數
- 25. 從異步函數中獲取當前方法名稱?
- 26. 是否有可能使用JavaScript獲取網站的名稱?
- 27. 是否可以從operator.methodcaller獲取函數名稱?
- 28. 是否有可能從GPS獲取當前時間
- 29. 是否有可能從Global.asax.GetVaryByCustomString()獲取當前評估的控件?
- 30. DB獲取當前數據庫名稱
不,RTTI不返回變量的**名稱**,它允許您確定它們的**類型**。 – 2012-01-07 13:06:23
可能重複[如何在C中抓取堆棧跟蹤?](http://stackoverflow.com/questions/105659/how-can-one-grab-a-stack-trace-in-c) – 2012-01-07 13:07:24
好的,我認爲'typeid(var).name'這樣做,但顯然它會返回變量類型的名稱。 – qdii 2012-01-07 13:08:20