• 카테고리

    질문 & 답변
  • 세부 분야

    알고리즘 · 자료구조

  • 해결 여부

    미해결

friend함수로 한다면,

20.07.06 06:42 작성 조회수 117

0

안녕하세요 강사님, 문제를 풀다 연산자 오버로딩오류로 구조체 내에서 

friend bool operator < (const Data &a, const Data &b) {
return a.date > b.date; //
}

이와같이 함수를 만들었습니다. 현재는 79번에 남겨주신 답변을 보고 이해한 상황입니다.

그런데, 강사님이 작성하신 코드로는 한줄 한줄 확인해볼 때 operator부분으로 넘어가지 않는데, 위 함수로는 operator로 넘어가 힙에 저장된 값들을 비교하는 과정을 거치고 원래 라인으로 돌아가는 것을 보았습니다. 

내부적으로는 동일하게 연산자 함수를 사용하나요? friend함수에서만 이와같은 일이 나타나는 이유는 무엇인가요?

답변 1

답변을 작성해보세요.

1

죄송합니다^^ 저도 잘 모르겠습니다. friend 키워드가 정보은닉을 완전히 무시하는 키워드라 그런게 아닌가 싶기도 합니다.