C++のostringstreamの用法について
C++において、ostringstreamはヘッダファイルで定義されたクラスであり、さまざまなデータ型を文字列に変換するために使用されます。
ostringstreamクラスは、ostreamクラスを継承しており、さまざまなタイプのデータを文字列に変換し、それをバッファ内に格納するためのメンバー関数の集合を提供します。最後に、str()関数を呼び出すことで、バッファ内の文字列を取得できます。
以下はostringstreamクラスのよく使用されるメンバー関数です。
- clear() : バッファをクリアする。
- str():バッファに含まれる文字列を返します。
- 与えられた文字列 str をバッファに格納し、バッファ内の既存の内容は削除されます。
- operator<<()とは、さまざまなデータ型をバッファに挿入するために使われる挿入演算子である。
- 演算子>>():バッファからデータを引き出す演算子
以下に、ostringstreamの使用方法を示すサンプルコードを示します。
#include <iostream>
#include <sstream>
int main() {
std::ostringstream oss;
int num = 10;
double pi = 3.14159;
std::string str = "Hello, world!";
oss << "Number: " << num << ", PI: " << pi << ", String: " << str;
std::string result = oss.str();
std::cout << result << std::endl;
return 0;
}
数字: 10、 PI: 3.14159、文字列: Hello, world!
上の例では、まずostringstreamオブジェクトossを作成しました。次に、挿入演算子を使って整数、浮動小数点、および文字列をossオブジェクトに挿入しました。最後に、str()関数を使用してossオブジェクト内の文字列を取得し、result変数に格納しました。最後に、result変数の値を出力して、変換後の文字列を得ることができます。