음악, 삶, 개발
std::sort 를 사용하기위해 정의해야하는 놈 : operator< 본문
오름차순으로 std::sort() 를 사용하기위해서는
operator< r가 오버로딩 되어야한다.
bool operator< (const Note& other) const {
return getStart() < other.getStart();
}
이때 이 operator< 함수뒤에 const 를 반드시 반드시 붙여야한다.
그렇지않으면 <algorithm> 함수를 호출할때 error 가 날것이다.
이 const 가 필요한 이유는 너무도 당연하다.
우리는 < 로 두 객체를 비교하는것이지, 객체의 상태를 변화시키는것이 아니기때문이다.