강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

CODE_H님의 프로필 이미지
CODE_H

작성한 질문수

홍정모의 따라하며 배우는 C++

9.2 입출력 연산자 오버로딩 하기

ostream 질문

작성

·

438

0

//class

friend std::ostream& operator << (std::ostream & out, const Point &point)

{    out << m_x <<" " << m_y << " " << m_z; }

//main

cout << p1 ;

--------------

여기서 보면

friend std::ostream& operator << (std::ostream & out, const Point &point)

에 매게변수가 2개 들어오는데 

main은  Point p1으로

매게변수2(const Point &point)만 전달받는 것 같은데,

매게변수1(std::ostream & out)에는 어떤 값을 전달 받는 것인가요??

답변 1

4

이 내용은 ostream에 대해서 조금 공부하시면 이해가 되실 것 같은데
앞에서 
int operator + (int a, int b)
{
    return a+b;
}
요런 식으로 만들어줬었죠.
이렇게 만든 것을 main 함수 내에서 a+b를 하면 a가 전달됐었습니다.
비슷하게 cout을 전달받는 겁니다. iostream 을 open document 해보시고,
cout이 어떤 녀석인지 확인해보시면 이해하실 수 있을 것이라 생각합니다.

CODE_H님의 프로필 이미지
CODE_H

작성한 질문수

질문하기