通常情況下,相同的方法X從不同的其他方法A,B,C中調用。是否可以從方法X中獲取調用方法的名稱(A,B,C)?最好是GDB控制檯命令(在調試期間),但NSLog的東西也是足夠的。如何獲取調用方法名稱?
1
A
回答
5
鍵入bt
而在被調用的函數內將有所幫助。這將打印被調用函數的回溯;調用層次結構中被調用函數正下方的函數就是調用它的那個函數。
(gdb) bt
#0 factorial (n=10) at recursive.c:13
#1 0x0040135e in main() at recursive.c:9
觀察,這裏,是main
稱爲factorial
。
1
您可以使用gdb中的命令backtrace
來查看調用堆棧。
1
如果您處於方法X
內部的斷點處,則可以使用where
打印堆棧,您將能夠看到發起X
的呼叫的起始位置。
0
的typedef的NSLog打印的功能名稱,並在方法的開始和結束添加:
#define CustomLogEnter(fmt, ...) NSLog((@"Function entered %s " fmt), __PRETTY_FUNCTION__, ##__VA_ARGS__);
既然你想要一個替代入庫和不使用斷點,你可以試試上面的,你也可以使用__LINE__
記錄行號。
相關問題
- 1. 如何獲取調用方法名稱?
- 2. 獲取調用方法的名稱javascript
- 3. 獲取調用方法的名稱
- 4. 如何在PHP中獲取調用函數/方法的名稱?
- 5. 如何獲取調用方法的名稱?
- 6. 如何獲取方法調用所源自的類的名稱
- 7. 如何從VariableDeclarationStatement獲取方法名稱
- 8. 如何獲取方法名稱?
- 9. 如何獲取父方法名稱?
- 10. 如何使用名稱調用方法?
- 11. 如何獲取Android/Java中調試輸出的方法名稱?
- 12. 如何按名稱調用方法?
- 13. 如何獲取調用者的文件名,方法名稱以python
- 14. 獲取方法的名稱使用WinDbg
- 15. 如何獲取方法的名稱方法
- 16. 如何從該方法中獲取方法名稱?
- 17. 如何在win 10通用應用程序中獲取調用方法名稱
- 18. 獲取擴展方法被調用的引用的名稱
- 19. BCEL - 獲取類名稱,元素名稱和方法名稱
- 20. 按名稱調用方法
- 21. 獲取調用事件按鈕名稱的最佳方法?
- 22. 獲取沒有調用它的方法的名稱的網址
- 23. 在運行時獲取當前調用方法的名稱
- 24. 獲取控制調用方法的名稱
- 25. 獲取和寫入調用方法名稱
- 26. 獲取視圖名稱,其中調用動作方法
- 27. 獲取調用方法的名稱空間和程序集
- 28. 獲取調用的方法名稱沒有__call
- 29. 獲取上一個/調用方法的名稱
- 30. MVC調用API控制器PostAsJsonAsync動作方法名稱獲取