파라미터 타입이 포인터나 레퍼런스가 아닌 경우, 즉 void f(int n)이랑 void f(const int n) 같은 경우라면

둘을 똑같은 함수 취급해서 둘다 정의하면 중복정의 에러나잖아요

이게 복사해서 넘기니 호출하는 입장에서는 마찬가지라는 이야기 같은데

저런 정수 타입 말고 클래스에서는 안맞는 얘기 아닌가요?

예를 들어 non-const 멤버함수가 있는 클래스라든가 얕은 복사되는 클래스라든가?

만약에 클래스의 멤버에 함수에 안 넘긴 다른 객체와 데이터를 공유하는 포인터가 있다면, const 없이 복사해서 넘길 경우 함수 내에서 그 포인터가지고 뭘할지 모르는데

이 함수는 그걸 안건드리겠다는 확신을 주려면 파라미터 const 여부도 오버로딩의 고려대상이어야 하는거 아니에요?