-1

各ベクター要素を cstring に割り当てていますか?

    for(int i = 1; i <examplevector.size; i ++)
    {
    CStringArrayexample[i-1] = examplevector[i];
    }

ここでクラッシュが発生します。その理由は何ですか?

4

1 に答える 1

1

CStringArray::operator[]境界チェックは行いません。クラッシュの最も可能性の高い理由は、配列のサイズがベクトルよりも小さいことです。

また、なぜ変数がないのですか?もしそうなら、なぜあなたの変数はあなたが使うタイプと同じ名前になっているのですか?

配列に新しい要素を追加する場合は、を使用しますAdd

編集後:

CStringArrayexample[i-1] = examplevector[i];

i==0配列の要素をチェックしているとき、あなたは知っています-1か?

于 2012-07-26T22:00:56.670 に答える