• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

연산자 질문

20.06.11 16:00 작성 조회수 136

0

연산자 오버로딩에 관해서 궁금한 게 있습니다.

Cents operator + (매개변수)

{     return  ; }

-------------------- 위의 구조가

반환 자료형 operator + ☜ 함수명 (매개변수)

{    return ; }

-----------

이 맞나요?

=======================

operator int()

{    return m_cents;   }

-------------------------- 이 구조는

operator 반환 자료형()

{ return m_cents; }

---------

이 맞나요?

형변환에는 "+" 함수 명이 없는데

어떻게 호출하는지 알 수있나요??

그리고 operator 는 const 같이 특별한 기능을 수행하는 명령어 인가요 ?

답변 1

답변을 작성해보세요.

1

Hello Yeo님의 프로필

Hello Yeo

2020.06.11

앞서 달아드린 답변이 조금 틀린 것 같아서 다시 답니다.
1번째 질문은
operator + 전체가 함수명이 맞습니다.
https://en.cppreference.com/w/cpp/language/operators를 참고하세요.
2번째 질문은 https://www.learncpp.com/cpp-tutorial/910-overloading-typecasts/
을 보시면 return type이라 보기에는 조금 어렵습니다.
3번째 질문은 질문이 잘 이해가 안가는군요.
4번째는 의미에 따라 조금 달라질 것 같은데, 'operator' keyword 로 본다면 맞는 해석입니다.
https://en.cppreference.com/w/cpp/keyword를 참고하세요