Atcoder Library에서 modular_int에 관련된 코드인데
첫번째 짤에서 rhs._v를 어떻게 참조할 수 있는거임? 밑에서 보다시피 _v라는 변수는 private이라 다른 객체에서 접근 못하지 않음?
ACL에서 operator==같은 경우는 friend 문구 추가해서 lhs._v == rhs._v 이런식으로 코딩해놨던데 이건 이해가 됨 friend가 그런 용도니까
그런데 저 위에 operator+=같은 경우는 왜 되는거임? ACL의 modular int 수도없이 많이 사용해봐서 저 코드가 틀린 코드가 아니란건 알겠는데
왜 올바른 코드인지 모르겠음
private이어도 같은 클래스라서 접근할 수 있음
??? 그러면 friend를 쓰는 이유가 뭐임??
operator==를 멤버 함수가 아닌 전역 함수로 정의했으면 priavte 필드에 접근 못 하니까
아 뭔소린지 알겠다 ㄳ