您好我目前正在通過GDB在Linux機器上調試我的代碼庫。我目前面臨的問題是從一個類的對象ptr獲取數據成員的值。要打印對象ptr的位置,我們可以使用「p」(打印)或「顯示」命令。如何在gdb中獲取數據成員的值?
對於例如:我有類這樣
class abc
{
string a;
};
所以在我的代碼,如果我因此在上述斷行後,使用ABC類的指針,然後
abc* objPtr = new abc();
我會得到objPtr,現在我想檢查datamember a(abc :: a)值的值。我怎麼能做到這一點?
(gdb) p objPtr
$2 = {px = 0x3ba6430690, pn = {pi_ = 0x3ba6430698}}
此外有沒有不同的方式來檢查數據成員是一個列表/向量?
你用-g編譯過嗎? – ColWhi
是的我已編譯它與-g選項\ –
關於您的列表/向量的問題,看看這裏:http://stackoverflow.com/questions/427589/inspecting-standard-container-stdmap-contents-with-gdb – Nobody