如果写成这样 ostream operator << (ostream& os, Point& pt) 则: Point a, b; cout<<a<<b; 错误,只能写为: cout<<a; cout<<b; 原因在于 cout<<a<<b; 相当于: (cout<<a)<<b; 第一个()中返回cout的临时变量,它可以不可以作为左值。因而错误。 如果写成: ostream& operator << (ostream& os, Point& pt) 则: cout<<a<<b; 正确,因为它等同于 (cout<<a)<<b; (acout<<a)返回cout的引用,即就是它自己,它可以再次作为左值。因而能够连着写这个输出流
最后
以上就是真实板栗最近收集整理的关于ostream & operator 重载操作流的注意事项的全部内容,更多相关ostream内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复