C++中实现从std::string类型到bool型的转换

利用输入字符串流:std::istringstream
 
?
1
2
3
bool b;
std::string s = "true" ;
std::istringstream(s) >> std::boolalpha >> b;

 

 
 
但当字符串s为“1”时,上面的代码无法正确转换,此时应该用:
 
?
1
2
3
bool b;
std::string s = "1" ;
istringstream(s) >> b;

你可能感兴趣的:(C++中实现从std::string类型到bool型的转换)