这是一个极简代码:
#include <string>
#include <sstream>
#include <iostream>
int main ()
{
std::string str = "spam" ;
std::istringstream isz( str ) ;
isz.seekg( 1,std::ios_base::beg ) ; std::cout << isz.fail() ;
isz.seekg( 1,std::ios_base::cur ) ; std::cout << isz.fail() ;
isz.seekg( 1,std::ios_base::end ) ; std::cout << isz.fail() ;
return 0 ;
}
我明白001
最后一次seekg
失败的意思。
我对 linux/g++ 和 win/MSVC 也是如此。
我在 C++/stl 文档中找不到这样的限制……
知道吗?
谢谢