C++ 中的流重载
为什么 void 运算符<<(ostream out, Test &t);
返回一个错误,而 void 运算符<<(ostream &out, Test &t);
不?
why doesvoid operator<<(ostream out, Test &t);
return an error whereasvoid operator<<(ostream &out, Test &t);
does not ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
因为您无法复制流,所以您必须按引用传递它们。
请注意,
operator<<
的规范形式是这样的:返回流很重要,这样您就可以将输出串在一起:
Because you cannot copy streams, you have to pass them per reference.
Note that the canonical form of
operator<<
is this:returning the stream is important so that you can string output together: