본문 바로가기
C++/열혈 C++

열혈 C++ 연습문제 10-2(cin 객체 <<연산자 오버로딩)

by Beijing_KingGod 2018. 4. 8.

#include <iostream>
using std::endl;
using std::cout;
using std::cin;

using std::ostream;
using std::istream;

class Point{
private:
 int x, y;
public:
 Point(int _x=0,int _y=0):x(_x), y(_y){}
 friend ostream& operator<<(ostream& os, const Point& p);
 friend istream& operator>>(istream& is, Point& p);
};

ostream& operator<<(ostream& os, const Point& p)
{
 os<<"["<<p.x<<","<<p.y<<"]"<<endl;
 return os;
}

istream& operator>>(istream& is, Point& p)
{
 is>>p.x;
 is>>p.y;
 return is;
}

int main(void)
{ Point p;
 cout<<p;

 cout<<"x,y 입력:";
 cin>>p; //operator>>(cin,p);
 cout<<p;
 return 0;
}

댓글