這裏是一個重載>>
操作功能:如果(!(是>> s))是什麼意思?
std::istream& operator>>(std::istream& is, std::vector<int>& v){
string s;
if (! (is >> s))
return is;
...
return is;
}
據我瞭解,if(! (is >> s))
沒有任何意義,因爲終端或控制檯將等待來自鍵盤或其他來源的輸入輸入s
。因此if()
中的條件值最終將爲false
。誰可以幫忙?
它必須被理解爲「if'is' can not read a string」。 –
該代碼太密集。它應該寫成兩部分:'是>> s;如果(!是)...'。 –