是否有任何C ++标准暗示streampos是否始终是有符号或无符号的?

时间:2017-09-01 18:01:25

标签: c++ fstream

我正在阅读C ++标准,但我无法弄清楚这一点。我正在查看多年前我们的一些源文件中的代码:

streampos pos = inputfile.tellg();
if(pos < 0)
// an error
or
streampos pos = outputfile.tellp();
if(pos < 0)
// an error

我有2个问题。第一个是代码是否正确以及为什么,第二个是否任何C ++标准暗示streampos是否总是有符号或无符号?我无法在C ++ 03标准中找到它所说的内容。 inputfile / outputfile是ifstream / ofstream。我能找到的最接近的东西不是标准,而是cplusplus.com,它说&#34;这个类的对象支持从int&#34;构建和转换。这是否意味着这种比较很好?

0 个答案:

没有答案