[解決済み] なぜインデックスではなくstring::iteratorを使用するのですか?重複
2022-03-07 14:33:31
質問
重複の可能性があります。
なぜ配列のインデックスではなくイテレータを使用するのですか?
string::iterator it;
for (it = str.begin(); it < str.end(); it++)
cout << *it;
cout << endl;
なぜダメなのか
for (int i = 0; i < str.size(); i++)
cout << str[i];
cout << endl;
string::iteratorは範囲チェックもしないようです。なぜ
string::iterator
インデックスではなく
ありがとうございます。
解決方法は?
インデックスを使用できるのは、ランダムアクセス(指定した位置への直接アクセス)をサポートするコンテナのみです。
イテレータは、あらゆるコレクション/データ構造にアクセスする統一された方法を提供します。コードをリファクタリングする際の柔軟性は計り知れないものがあります。
関連
-
[解決済み】クラステンプレートの引数リストがない
-
[解決済み] クラスにデフォルトコンストラクタが存在しない。
-
[解決済み] なぜパスワードにはStringではなくchar[]が好まれるのですか?
-
[解決済み] 要素ごとの加算は、結合ループよりも分離ループの方がはるかに高速なのはなぜですか?
-
[解決済み] なぜC++はPythonよりもstdinからの行の読み込みが遅いのですか?
-
[解決済み] どうすれば、文字列中のリテラルな中抜き文字を印刷し、また.formatを使用することができるのでしょうか?
-
[解決済み] なぜlist.join(string)ではなくstring.join(list)なのでしょうか?
-
[解決済み] なぜ、オブジェクトそのものではなく、ポインタを使用しなければならないのですか?
-
[解決済み] Stringでswitch文が使えないのはなぜですか?
-
[解決済み] なぜC++ STLは "ツリー "コンテナを提供しないのですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】LLVMで暗黙のうちに削除されたコピーコンストラクタの呼び出し
-
[解決済み] error: 'ostream' does not name a type.
-
[解決済み] error: 'if' の前に unqualified-id を期待した。
-
[解決済み】浮動小数点例外エラーが発生する: 8
-
[解決済み】c++でstd::vectorを返すための効率的な方法
-
[解決済み】エラー。switchステートメントでcaseラベルにジャンプする
-
[解決済み] 解決済み] `pthread_create' への未定義の参照 [重複] [重複
-
[解決済み】VC++の致命的なエラーLNK1168:書き込みのためにfilename.exeを開くことができません。
-
[解決済み] 現在のCまたはC++の標準文書はどこにありますか?
-
[解決済み】配列のインデックスの代わりにイテレータを使用する理由は?