2012-11-28 51 views
0

是否可以在方法上設置斷點以及將覆蓋它的所有方法?Gdb在多態方法上設置斷點

考慮下面的代碼:

struct Foo { 
    virtual void a(); 
}; 

struct Bar : public Foo { 
    virtual void a(); 
}; 

是否有可能使用其他的單一命令rbreak設置兩個「A」的方法斷點?

+1

錯過了「其他那個rbreak」的部分問題。任何理由爲什麼rbreak不夠好? – nanda

+0

,因爲你可以打破不重寫Foo :: a – mlornac

+0

的方法,你的意思是某些方法「void a()」在一些任意類中也可以包含。 – nanda

回答

0

不幸的是,現在在gdb中沒有辦法做到這一點。

我認爲這將是一個很好的補充。但是,使用起來會相當昂貴。 gdb必須讀取debuginfo中的所有類型以查找Foo的子類。