클래스 A하고 B에서 shared_ptr<C>를 쓸건데

A에서는 non-const로 쓰고싶고

B에서는 const로 쓰고싶은데 어케함?


만약에 shared_ptr를 안썼다면

class A { C* c; }

class B { const C* c; }

b.c = a.c;

이런식으로 구현했을텐데

shared_ptr<C>하고 shared_ptr<const C> 이거는 서로 별개의 타입이라 b.c = a.c; 이게 안되는거같거든