渡されるデータ型に文字列を読み込もうとする関数(TinyXMLのTiXmlElement::QueryValueAttribute(const std::string &name, T * outValue
)を使用しています。私の場合、私はbool
を渡しています。だから、0
または1
ではなく、true
またはfalse
になるようにboolalpha
フラグを使用します。C++:boolalphaの使用
どうすればよいですか?
ありがとうございました。
渡されるデータ型に文字列を読み込もうとする関数(TinyXMLのTiXmlElement::QueryValueAttribute(const std::string &name, T * outValue
)を使用しています。私の場合、私はbool
を渡しています。だから、0
または1
ではなく、true
またはfalse
になるようにboolalpha
フラグを使用します。C++:boolalphaの使用
どうすればよいですか?
ありがとうございました。
TiXmlElement::QueryValueAttribute
値を解析するためにstd::istringstream
を使用しています。したがって、bool
の周りのラッパークラスを作成して、operator >>
をオーバーロードして、常にboolalpha
を抽出前に設定することができます。
文字列値を使用してistringstreamを構築し、そこから* T変数にストリームすることができます。 I/Oの側面を以下に示します。
#include <iostream>
#include <iomanip>
#include <sstream>
int main()
{
// output example
std::cout << std::boolalpha << true << ' ' << false << '\n';
// input example
std::istringstream iss("true false");
bool x = false, y = true;
iss >> x >> y;
std::cout << std::boolalpha << x << ' ' << y << '\n';
}