私はgdbを使っていくつかのC++コードをデバッグしています。現時点で私が見ているコードは、オブジェクトのポインタかNULLポインタのいずれかのポインタの配列を反復します。gdbの条件付き表示
もし私がちょうどdisplay list[index]->member
であれば、list [index]がnullの時に文句を言うでしょう。 list [index]がnullでない場合に限り、メンバを表示する方法はありますか?私はあなたが条件付きブレークポイント(condition <bp-num> <exp>
)を設定できることを知っていますが、私はそれがどのように役立つか分かりません。
問題のコードは次のとおりです。
VMSは、ポインタの配列であるfor (int i=0;i<BSIZE*BSIZE;i++){
if (vms[i]==target) {valid=true; break;}
}
。
ありがとうございました! 'if'行にブレークポイントを設定し、それを取得し、vms [i]!= NULLまでステップし、ブレークポイント(BP1と言う)を 'condition 1 vms [i]!= NULL'に設定して安全にオンにします'vms [i] - > member'を表示してから、続けてください。 もっと良い解決策を! – Samizdis