[英]GDB break on object function call
我正在調試一個問題,我想打破每個具有特定對象的方法調用作為'this'參數。 這在GDB中是否可行?
這很簡單。 您可以使用b A::a if (this==0x28ff1e)
。
我想打破每個具有特定對象的方法調用作為'this'參數
這意味着您希望中斷已實例化對象的特定類的每個成員函數。
為方便起見,我們假設所有成員函數都在特定的cpp文件中定義,例如myclass_implementation.cpp
您可以使用gdb以這種方式在myclass_implementation.cpp
每個函數上應用斷點:
rbreak myclass_implementation.cpp:.
假設您想要打破一些特定的函數,例如以Get開頭的getter函數,那么您可以使用gdb以這種方式應用斷點:
rbreak myclass_implementation.cpp:Get*
this參數應該只是類本身包含的方法。 所以你應該只需要為你正在查看的類的所有方法設置斷點。 我不確定有一種簡單的方法可以做到這一點。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.