1

コンテキストとして、私の特定のケースは次のとおりです。セグメンテーション違反が発生し、コアを分析しています。スタック トレースは、exit と呼ばれるプログラムを示していますが、一部のベクトルの d'tor 内で、完了する前にクラッシュしました。ベクトルのアドレスを取得できますが、コードに詳しくなく、対応する変数がわかりません。関連するコードを検査するために、このベクトルを指している変数を見つけたいと思います。助言がありますか?

4

2 に答える 2

1

クラッシュの直前にブレークポイントを作成し、std::vector 内のすべての変数を出力できます。

print *(your_vector._M_impl._M_start)@your_vector.size()

例えば:

あなたと一緒std::vector<int> vec(3);に書くだろうprint *(vec._M_impl._M_start)@3

于 2013-10-30T12:26:27.750 に答える