음악, 삶, 개발

std::sort 를 사용하기위해 정의해야하는 놈 : operator< 본문

개발 공부/C++ 약점공략

std::sort 를 사용하기위해 정의해야하는 놈 : operator<

Lee_____ 2020. 10. 24. 19:38

오름차순으로 std::sort() 를 사용하기위해서는

operator< r가 오버로딩 되어야한다.

bool operator< (const Note& other) const {
        
   return getStart() < other.getStart();
        
}

이때 이 operator< 함수뒤에 const 를 반드시 반드시 붙여야한다.

그렇지않으면 <algorithm> 함수를 호출할때 error 가 날것이다.

이 const 가 필요한 이유는 너무도 당연하다.

우리는 < 로 두 객체를 비교하는것이지, 객체의 상태를 변화시키는것이 아니기때문이다.