重载c++的<<操作符
2017-04-05 14:31
169 查看
今天有道题需要重载"<<"运算,对对象进行一些计算。
一开始认为cout是一个类,"<<"在cout进行过定义,经过一番操作后。。显然失败。
后来得知<<是一种独立于cout的操作符,我对它进行了如下定义:
然后又悲剧了……提示必须有2个参数....原来这是<<的规定,第一个参数是输入输出流。
cout是ostream流对象的一个引用
这样写是正确的
一开始认为cout是一个类,"<<"在cout进行过定义,经过一番操作后。。显然失败。
后来得知<<是一种独立于cout的操作符,我对它进行了如下定义:
void operator<<(Rectangle &p) { cout<<(p.x2-p.x1)*(p.y2-p.y1); }
然后又悲剧了……提示必须有2个参数....原来这是<<的规定,第一个参数是输入输出流。
cout是ostream流对象的一个引用
这样写是正确的
void operator<<(ostream& os,Rectangle &p) { os<<(p.x2-p.x1)*(p.y2-p.y1); }
相关文章推荐
- c++输出(<<)操作符重载
- C++输入操作符>> 输出操作符<<重载
- <<C++ Primer>>中文版 重载箭头运算符的理解
- c++ 重载 >>(输入) 、<< (输出) 操作符
- C++第九周【任务一】定义Complex类中的<<和>>运算符的重载,实现输入和输出
- c++ 重载 >>(输入) 、<< (输出) 操作符
- C++中cout/cin对于空指针、字符指针的处理,及输入>>、 输出<<操作符的重载
- C++程序学习--C++模板类重载左移操作符<<的细节
- 第九周 C++任务一。定义Complex类中的<<和>>运算符的重载,实现输入和输出
- c++ 重载 >>(输入) 、<< (输出) 操作符
- C++ 中重载 + 操作符的正确方法
- C++重载箭头操作符的理解
- C++操作符重载
- C++操作符重载的变态用途之子类转换
- 我的学习笔记——c++拷贝构造函数,重载赋值操作符
- C++中->操作符的重载
- C++中的操作符重载
- c++操作符重载
- C++操作符重载手册
- C++中重载+操作符的正确方法