C++运算符重载 003:惊呆!Point竟然能这样输入输出

003:惊呆!Point竟然能这样输入输出

总时间限制: 1000ms 内存限制: 65536kB
描述
程序填空

#include <iostream> 
using namespace std;
class Point { 
	private: 
		int x; 
		int y; 
	public: 
		Point() { };
// 在此处补充你的代码
}; 
int main() 
{ 
 	Point p;
 	while(cin >> p) {
 		cout << p << endl;
	 }
	return 0;
}

输入
多组数据,每组两个整数
输出
对每组数据,输出一行,就是输入的两个整数
样例输入

2 3
4 5

样例输出

2,3
4,5

输出多了逗号,故需要虫偶哥在cout<<;
cout作为已有类,需要友元该类;
cin>>也需要重载

#include <iostream> 
using namespace std;
class Point { 
	private: 
		int x; 
		int y; 
	public: 
		Point() { };
// 在此处补充你的代码
friend istream &operator >>(istream &in,Point &s){     //返回引用的cin类型;
	in>>s.x>>s.y;
	return in;
}
friend ostream &operator <<(ostream &o,const Point &s){//返回引用的cout类型
	cout<<s.x<<","<<s.y;
	return o;
}
//重载友元 
// 多输出一个‘,’ 
}; 
int main() 
{ 
 	Point p;
 	while(cin >> p) {
 		cout << p << endl;
	 }
	return 0;
}
发布了60 篇原创文章 · 获赞 3 · 访问量 1616
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 深蓝海洋 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览