Observer Pattern1 std::weak_ptr std::weak_ptr은 std::shared_ptr에서의 문제점인 자신이 가리키는 대상이 이미 파괴되었을 수 있다는 문제를 극복 할 수 있다. std::weak_ptr는 역참조 할 수 없으며, 널인지 판정할 수도 없다. std::weak_ptr는 그 자체로 smart pointer가 아닌 std::shared_ptr를 보강하는 위치에 있기 때문이다. 대체로 std::weak_ptr는 std::shared_ptr를 이용해 생성한다. std::weak_ptr는 자신을 생성하는데 쓰인 std::shared_ptr가 가리키는 것과 동일한 객체를 가리키지만 그 객체의 참조 횟수에는 영향을 주지 않는다. 대상을 잃은 std::weak_ptr를 만료 되었다고 하며, expire를 호출함으로써 알 수 있게 된다. .. 2020. 7. 14. 이전 1 다음