3

ベクターで変化を調べたいと思います。したがって、ベクトルサイズにポイントを設定したいと思います。これにより、Visual Studio を使用すると、サイズを変更するたびにベクターの内容を確認できます。どうすればこれを行うことができますか?

このリンクでは、条件付きブレークポイントを設定する方法を見つけることができます。そして、私は次のような条件を設定しようとしました:イベントの my_vect.size() 変数Has changed(8. 条件付きブレークポイントによる)、しかしそれはひどいです。

4

3 に答える 3

11

my_vect.size() は変数ではなく関数です。次のようになります。

size_type size() const _NOEXCEPT
    {   // return length of sequence
    return (this->_Mylast - this->_Myfirst);
    }

解決策は次のとおりです。プログラムをデバッガーで開始します。ベクトル サイズが変更される前にブレークします。新しいデータ ブレークポイントを追加します。あなたのベクトルが と呼ばれているとしますmyvec。次に、アドレス フィールドに&myvec._Mylastそれぞれ と を入力します&myvec._Mylast。これで、ベクトル内の最初または最後の要素へのポインターが変更されるたびに、デバッガーが停止します。

于 2013-01-31T08:13:42.537 に答える
0

ヘッダーを開き、<vector>ベクトルのサイズを変更する std::vector の各メソッド (push_back、erase など) の開始点 (または終了点) にブレークポイントを設定できます。

于 2013-01-31T07:38:39.507 に答える