首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >istringstream "get“方法实现

istringstream "get“方法实现
EN

Stack Overflow用户
提问于 2009-03-01 16:46:12
回答 1查看 732关注 0票数 0

这个“方法”实现说是istringstream get

代码语言:javascript
复制
int get();
Extracts a character from the stream and returns its value (casted to an integer).

我想看看它的实现。

编辑:删除了我正在尝试移植的部分

EN

回答 1

Stack Overflow用户

发布于 2009-03-01 17:42:51

您将在标题<sstream>中找到std::istringstream。但不是get()方法。get()成员继承自basic_istream<_Elem, _Traits>模板,您可以在标题中找到该模板。下面是我的VS2005安装中的实现:

代码语言:javascript
复制
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);
    }
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/600077

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档