[過去ログ] スレを勃てるまでもないC/C++の質問はここで 24 [転載禁止]©2ch.net (1002レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
780
(3): デフォルトの名無しさん [age] 2016/05/20(金) 11:16:33.86 ID:czYvqd6J(1) AAS
vector<int> v1(10);

v1.push_back(999);
v1.push_back(111);
v1.push_back(666);
v1[3] = 777;

printf("%d\n", v1[0]);
printf("%d\n", v1[1]);
printf("%d\n", v1[2]);
printf("%d\n", v1[3]);

[出力結果]
0
0
0
777

vectorの要素数を10コ確保し
push_back()を呼ぶと配列に代入されず0となるんだが。
どうすれば?
781: デフォルトの名無しさん [sage] 2016/05/20(金) 11:40:18.01 ID:jCV1qcCq(1) AAS
>>780
そのコードだと、
10個の0に続けて999, 111, 666を追加してる。
コンストラクタとpush_back()の仕様をよく読んでみ
782: デフォルトの名無しさん [sage] 2016/05/20(金) 12:42:41.56 ID:EWS23G7J(1) AAS
>>780
v1.size()で要素数を確認!
783
(1): デフォルトの名無しさん [sage] 2016/05/20(金) 19:14:43.03 ID:COmJEZ9N(1) AAS
>>780
capacity()を使え

vector<int> v1;
v1.capacity(10);

v1.push_back(999);
v1.push_back(111);
v1.push_back(666);
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.047s