看板 C_and_CPP 關於我們 聯絡資訊
在看C++ Primer 4/e 中文版 其中第8章IO的部分 有一段覺得不太懂,希望板上先進能解惑一下 p288頁的表: http://img59.imageshack.us/img59/7937/problemc2.jpg
寫說s.clear(flag) flag的型別是strm::iostate 但是p289頁的例子: http://img24.imageshack.us/img24/3503/problemca.png
中間有一行:cin.clear(istream::failbit); 這裡的參數怎麼是用istream::啊?? 型別不是strm::iostate嗎 另外請問strm是什麼? 從前面一直讀過來一直沒講到這是啥 怕自己有遺漏的地方,便把書上照下來了,如果不清楚請見諒。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 112.104.106.103
legendmtg:應該只是縮寫... 10/25 00:01
bil193:所以書中strm就看成stream就好囉 那還有一個問題是, 10/25 00:32
bil193:strm::iostate跟istream::failbit是一個對應一個嗎 istream 10/25 00:32
bil193:是strm;failbit是iostate嗎?還是strm::iostate是一個型別 10/25 00:33
bil193:istream::failbit是一個flag,它的型別是strm::iostate?? 10/25 00:34
bil193:不好意思我一直掌握不到判斷的精髓> < 10/25 00:35
legendmtg:failbit是一種iostate iostate是ios_base裡的一個enum 10/25 01:43
legendmtg:不管哪個stream都會繼承到ios_base 所以都會有iostate 10/25 01:43