deulee의 개발 노트

고정 헤더 영역

글 제목

메뉴 레이어

deulee의 개발 노트

메뉴 리스트

  • 홈
  • 태그
  • 방명록
  • 분류 전체보기 (112)
    • C++ (79)
      • C++98 (36)
      • Modern C++(11, 14, 17, 20) (34)
      • C++ STL (9)
    • 데이터베이스 (0)
    • 컴퓨터 구조 (0)
    • 운영체제 (0)
    • 읽은 책 (0)
    • 네트워크 (0)
    • 알고리즘 (31)
      • 이론 (5)
      • 문제 (26)
    • 잡글 (1)
      • 아이디어 (0)
      • 해야할 것 (0)
      • 목표 (0)
      • 정보글 (1)
    • git (0)

검색 레이어

deulee의 개발 노트

검색 영역

컨텐츠 검색

연산자 오버로딩

  • C++ 다양한 연산자 오버로딩의 예시

    2023.08.05 by deulee

  • C++ 연산자 함수

    2023.08.05 by deulee

C++ 다양한 연산자 오버로딩의 예시

각 연산자별로 주의해야할 점들이 많고 고유하게 적용되는 규칙들이 있다. 이번 글에서는 하나하나 알아보도록 하자. 1. 관계 연산자 관계 연산자는 동일한 타입의 두 객체에 대해 상등 및 대소를 비교하는 연산자이다. 다음 예시를 보도록 하자. #include class Num { private: int x; public: Num() {} Num(int _x) : x(_x) {} bool operator==(const Num& right) const // == { return x == right; } bool operator!=(const Num& right) const // != { return !(*this == right); } bool operator>(const Num& right) const // ..

C++/C++98 2023. 8. 5. 17:44

C++ 연산자 함수

대망의 연산자 오버로딩이다. 연산자 오버로딩은 말 그대로 연산자를 함수로 오버로딩이 가능하다는 것을 의미한다. 다음의 예시 있다고 가정해보자. Num A; Num B; Num C; A = B + C; 이 전에 클래스는 타입이라고 얘기했던 것을 기억해보자. 즉, 기본적인 자료형이 제공하는 모든 연산이 클래스에서도 가능하다는 것인데 그 중에는 사칙연산도 포함이 된다. 그럼 이것이 어떻게 가능할까? 막상 저대로 컴파일을 한다면 에러가 나올 것이다. 이를 해결하기 위해 나온게 바로 연산자 오버로딩이다. #include class Num { private: int x; public: Num() {} Num(int _x) : x(_x) {} const Num operator+(const Num& right) con..

C++/C++98 2023. 8. 5. 15:29

추가 정보

인기글

최신글

페이징

이전
1
다음
TISTORY
deulee의 개발 노트 © Magazine Lab
페이스북 트위터 인스타그램 유투브 메일

티스토리툴바