[C++] 참조 한정사 since C++11
c++11 표준으로 넘어오면서 추가된 한정사가 있다.
바로 참조 한정사다.
const 한정 메소드와 작동원리는 거의 유사하다.
동일 파라미터의 함수가 const/비const 버전으로 오버로딩되었을 경우,
const로 한정된 메소드는 const 객체에서만 호출이 되고, 그냥 메소드는 그냥 객체에서 호출이 된다.
새로 나온 참조 한정사도 마찬가지다.
왼값 참조와 오른값 참조가 있는데,
왼값 참조로 한정된 메소드는 그냥 값이나 왼값으로 참조되었을 경우 호출되고,
오른값 참조로 한정된 메소드는 객체가 오른값일 경우(이름이 없을 경우) 호출이 된다.
이렇게
그대신 const/비const 메소드와 공존할 수는 없다. 섞어쓸 수도 없고.
동일 파라미터로 오버로딩할 경우, 그 한정자는 &/&& 쌍이거나 const/비const 쌍이어야만 한다.