게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
C++ operator 질문 하나만 부탁드려요!!
게시물ID : programmer_4466짧은주소 복사하기
작성자 : 아리나니아
추천 : 0
조회수 : 4678회
댓글수 : 6개
등록시간 : 2014/07/10 16:21:47
옵션
  • 본인삭제금지
 
  1. typedef struct Point {
  2.     double x;
  3.     double y;
  4.     bool operator==(struct Point p) {
  5.         if (x != p.x) return false;
  6.         if (y != p.y) return false;
  7.         return true;
  8.     }
  9. };
  10.  
  11. void test(const Point & A, const Point & B) {
  12.     if (A == B) {
  13.         ...
  14.     }
  15.     ...
  16. }
 
구조체를 비교하려고 operator를 저렇게 만들어봤는데요.
12번째 라인에 A == B 여기서 빨간부분에 에러가 납니다.
에러 내용이 이러한 피연산자와 일치하는 "==" 연산자가 없습니다. 피연산자 형식이 const Point == const Point 입니다. 이구요.
인수로 들어오는 const Point & A에 const 를 지우면 잘 작동하는데
괜히 오기가 생겨서 const를 안빼고도 사용가능하게 할 수 없나 싶어서 질문드립니다.
 
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호