안녕하세요. 언제나 휴일에 언휴예요.
이번 실습에서는 개체 출력자를 구현합니다.
C++에서 출력을 위해 ostream 형식을 정의하고 있어요. cout이 대표적인 ostream 형식 개체죠.
개체 출력자는 ostream 형식 개체를 이용하여 개체 정보를 출력할 수 있게 정의하는 코드 집합을 개체 출력자라 부릅니다.
이번 실습에서는 회원 클래스를 정의하고 개체 출력자를 정의할 거예요.
기본 형식처럼 회원 개체 정보를 ostream 형식 개체로 출력할 수 있게 구현하는 실습입니다.
/* https://ehpub.co.kr C++ 예제 - 언제나 휴일 개체 출력자 - 회원 클래스 */ #include #include using namespace std; class Member { int num; string name; public: Member(int num, string name) { this->num = num; this->name = name; } int GetNum()const { return num; } string GetName()const { return name; } void View(ostream& os = cout)const { os << "번호:" << num << " 이름:" << name; } }; ostream &operator<<(ostream& os, const Member& member) { member.View(os); return os; } ostream& operator<<(ostream& os, const Member* member) { member->View(os); return os; } int main() { Member member(3, "홍길동"); Member *member2 = new Member(2, "강감찬"); cout << member << endl; cout << member2 << endl; delete member2; return 0; }
실행 결과는 다음과 같습니다.
번호:3 이름:홍길동 번호:2 이름:강감찬