0
我從一個字符串流中提取數據爲string
和double
:你怎麼知道一個流提取到一個變量失敗?
std::string word;
double num;
std::istringstream stream("hello x");
stream >> word >> num;
std::cout << word;
std::cout << num;
是否可以告訴我們,如果第二個令牌,"x"
被成功地分析爲int
?
在這種情況下,顯然不會,x的值是0
。
提取操作返回流(不是布爾)的參考設定。流發生故障時處於失敗狀態,並且該流具有隱式轉換爲布爾值,用於檢查相關故障位。 – 2014-10-29 02:59:32
這真的很方便知道。感謝您的快速回答,@nkryptic!我感謝你的澄清@MattMcNabb。 – 2014-10-29 04:20:06