std::istream
有原型istream& read (char* s, streamsize n)
的实际读取的字节数应通过调用istream::gcount()
,也istream
的有效性可以从ios::good
知道来得到。了解的std :: istream的设计::阅读
我正在讨论另一个流类的实现,我试图和我的一个同事一起写,我在说我可能会遵循这个设计;但他表示,不要每次都有用户致电gcount,否则可能会看到像istream& read (char* s, streamsize n, size_t &bytes_read)
这样的原型,所以它会在一次通话中结束,前者更笨拙。我无法防守std
的设计选择。 istream::read
背后的真正理由是什么?
你的意思是'size_t&bytes_written'吗?而且,它应该是'streamsize&bytes_written'(或者'chars_read')。 – 2010-10-07 14:22:39
@詹姆斯:是的,谢谢!字节和字符是同义词_here_,因为'sizeof'是相同的:) – legends2k 2010-10-07 14:43:48