for (i=1; i<=10; i++) myvector.push_back(i);
// erase the 6th element
myvector.erase (myvector.begin()+5);
// erase the first 3 elements:
myvector.erase (myvector.begin(),myvector.begin()+3);
cout << "myvector contains:";
for (i=0; i<myvector.size(); ++i)
i = 0の後に開始する必要はなく、代わりにi = 1から要素を格納できるように、消去関数を操作する方法はありますか基本的に私は1つの索引付けを保持したい)./ *これらのコードは、1つの索引付けに格納したものの、要素を0つの索引付けとして格納します。 */erase()を使用した後にベクトルの要素を配置する
あなたは* C++での配列(ベクトルと同様に)インデックスはゼロベースですか?言語自体のセマンティクスを変更する理由は何ですか? 1ベースのインデックスを使用して解決したい*本当の*問題は何ですか? –
「索引付け」という用語は、誤解を招くことがあります。 C/C++で "インデックス"と呼ばれるものは、通常、オフセット*であるので、0から始まります。 – VTT
基本的に要素を保存したいと思います。配列とインデックスの1〜10は同じでなければなりません。しかし、私は消去機能を使用した後、要素のインデックスはゼロインデックスに変わります。だから、私はerase()を使用して、1ベースのインデックス付けを保持する方法もありますか? –