いくつかの基本クラス A と 2 つの派生クラス B および C があるとします。クラス A には f() というメソッドがあります。
私の 'this' が実際にクラス C のインスタンスである場合にのみヒットされる Visual Studio の A::f() に条件付きブレークポイントを設定する方法はありますか?
例えば
void A::f()
{
some code and a breakpoint
}
void foo(A* a)
{
a->f();
}
void bar()
{
A a;
B b;
C c;
foo(&a); // breakpoint isn't hit
foo(&b); // breakpoint isn't hit
foo(&c); // breakpoint is hit
}
ブレークポイントの状態で仮想テーブルポインターをテストすることでそれを達成することができましたが、より良い(より簡単な)方法が必要です。
前もって感謝します。
編集:コメントで提案されているようにソースコードを変更することは、私が探している解決策ではありません。これは、VC++ デバッガーを使用してのみ実行する必要があります。