0
該 「辦法」 的實施表示istringstream getistringstream 「get」 方法實現
int get();
Extracts a character from the stream and returns its value (casted to an integer).
,我想看看它的實現。
編輯:刪除其中我試圖端口
該 「辦法」 的實施表示istringstream getistringstream 「get」 方法實現
int get();
Extracts a character from the stream and returns its value (casted to an integer).
,我想看看它的實現。
編輯:刪除其中我試圖端口
的部分,你會發現在頭<sstream>
std::istringstream
。但不是get()
方法。 get()
成員繼承自basic_istream<_Elem, _Traits>
模板,您可以在標題中找到該模板。這裏的實現,從我的VS2005安裝:
int_type __CLR_OR_THIS_CALL get()
{ // extract a metacharacter
int_type _Meta = 0;
ios_base::iostate _State = ios_base::goodbit;
_Chcount = 0;
const sentry _Ok(*this, true);
if (!_Ok)
_Meta = _Traits::eof(); // state not okay, return EOF
else
{ // state okay, extract a character
_TRY_IO_BEGIN
_Meta = _Myios::rdbuf()->sbumpc();
if (_Traits::eq_int_type(_Traits::eof(), _Meta))
_State |= ios_base::eofbit | ios_base::failbit; // end of file
else
++_Chcount; // got a character, count it
_CATCH_IO_END
}
_Myios::setstate(_State);
return (_Meta);
}