2014-03-01 143 views
0

應該將istream作爲參考還是const參考傳遞?應該將istream作爲參考還是const參考傳遞?

我只需要從istream中提取字符串,而不是以任何方式修改istream的 。如果我不打算修改它,是否有理由不將它作爲 const引用傳遞?

+6

從中提取並修改它。 – chris

+0

無論何時從'istream'讀取,它都會更新指針,以便下一次讀取來自流中的下一個值。如果將其定義爲'const',則指針無法被適當修改。 – OnlineCop

回答

4

通常,流由非const引用傳遞。這是因爲大多數有用的操作(如插入(寫入)和提取(讀取))實際上都會修改流狀態。有了const引用,你真正可以做的就是檢查現有狀態,比如錯誤標誌。