항상 스마트 포인터 동작에 대한 새로운 정의를 다시 작성할 가능성에 대해 읽었지 만 지금은 실제 예제를 찾을 수 없습니다. 할 수있는 새로운 상태를 추가로스마트 포인터의 동작과 라이프 사이클을 재정의/재정의하는 방법은 무엇입니까?
이 이스마트 포인터 참조 횟수 또는 수명주기를 관리하는 링크 참조를 사용하고, 내 기본 문제가 구성 :
지금 나는 해결책을 얻을 수 있다면이 문제를 제안하고보고 싶어 릴리스 및 내 포인터의 삭제가 발생하면 이벤트가 트리거 될 때 리소스를 비우는 것이 좋습니다.
게임을 할 때 일반적으로 모든 리소스가로드되고 해제되며 사용자가 레벨 1에서 레벨 2로 넘어갈 때 해제되므로 레벨 1의 리소스가 해제됩니다. 또한 자동 참조 카운팅을 기다릴 수 없어서 레벨 2에서 레벨 1의 리소스를 사용하지 않으면 자동으로 해제 될 것이라고 생각하므로이 예제를 계속 사용하고 싶습니다. 더 이상 요청되지 않았기 때문에 자동으로 해제됩니다. ; 이것은 사실 일 수 있지만 사용자가 스트레스를 받고 컴퓨터를 사용할 때 메모리로 작동하는 것은 정말 나쁜 행동입니다.
나는 스마트 포인터를 사용하고 싶습니다. 왜냐하면 저는 그들이 제공하는 다른 모든 기능에도 관심이 있기 때문입니다.하지만 그들은 저에게 큰 단점을 가지고 있으며 직접적인 라이프 사이클을 직접 관리해야합니다.
어떤 옵션이 있습니까?
"레벨"개체가있는 경우 수준을 변경할 때 올바른 개체를 유지하는 것이 쉽습니다. – mfontanini
@mfontanini 네,하지만 문제는 다른 사람들을 풀어내는 방법입니다. 그리고 레벨의 변화가 있고 자동문을 기다리지 않을 때 이것을하는 방법이 있습니다. – user827992
옵저버 패턴은 어떻습니까? http://en.wikipedia.org/wiki/Observer_pattern – ForEveR