[解決済み] istringstream、ostringstream、stringstreamの違いは何ですか?/ なぜすべてのケースでstringstreamを使用しないのですか?
2022-02-10 13:01:56
質問
どのような場合に
std::istringstream
,
std::ostringstream
と
std::stringstream
を使うべきで、なぜ
std::stringstream
をすべてのシナリオで使用することができます(実行時のパフォーマンスに問題はないでしょうか?)
最後に、(ストリームを全く使わない代わりに)何か悪い点はないでしょうか。
std::string stHehe("Hello ");
stHehe += "stackoverflow.com";
stHehe += "!";
解決方法は?
個人的には、同じ文字列ストリームへのストリーミングと、同じ文字列ストリームからのストリーミングを実行したいことは非常に稀です。
通常は、文字列からストリームを初期化してそれをパースするか、文字列ストリームに何かを流し、その結果を取り出して保存したいのです。
同じストリームとの間でストリーミングを行う場合、ストリームの状態やストリームの位置に非常に注意する必要があります。
ただ」を使う
istringstream
または
ostringstream
を使用することで、意図をより明確に表現でき、また、誤って
<<
対
>>
.
そこに かもしれない しかし、私なら、まずその点には目を向けません。
あなたが書いたものは何も問題ありません。もし十分なパフォーマンスが得られないと感じたら、他のアプローチをプロファイリングすることもできますし、そうでなければ、最も明確なものにこだわってください。個人的には、この方法がいいと思います。
std::string stHehe( "Hello stackoverflow.com!" );
関連
-
[解決済み】C-stringを使用すると警告が表示される。"ローカル変数に関連するスタックメモリのアドレスが返される"
-
[解決済み】Cygwin Make bash コマンドが見つかりません。
-
[解決済み] 文字列リテラルの前にある'b'文字は何を意味するのでしょうか?
-
[解決済み] C#のStringとstringの違いは何ですか?
-
[解決済み] なぜ、オブジェクトそのものではなく、ポインタを使用しなければならないのですか?
-
[解決済み] const int*、const int * const、int const *の違いは何ですか?
-
[解決済み] 私的相続、公的相続、保護相続の違いについて
-
[解決済み] C++11の'typedef'と'using'の違いは何ですか?
-
[解決済み] g++とgccの違いは何ですか?
-
[解決済み】画像処理。コカ・コーラ缶」認識のためのアルゴリズム改良
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】C++ - 解放されるポインタが割り当てられていないエラー
-
[解決済み] [Solved] Error C1083: Cannot open include file: 'stdafx.h'
-
[解決済み】C++のGetlineの問題(オーバーロードされた関数 "getline "のインスタンスがない
-
[解決済み】変数 '' を抽象型 '' と宣言できない。
-
[解決済み】fpermissiveフラグは何をするのですか?
-
[解決済み】エラー。switchステートメントでcaseラベルにジャンプする
-
[解決済み】C++の余分な資格エラー
-
[解決済み】1つ以上の多重定義されたシンボルが見つかる
-
[解決済み】 while(cin) と while(cin >> num) の違いは何ですか?)
-
[解決済み] C++でintをstringに変換する最も簡単な方法