녹의 기본 설계 결정에 대한 또 다른 질문이 있습니다.오브젝트 구성 : 참조 저장과 참조 ID 비교
저는 간단한 게임을 쓰고 있습니다. 나는 그들의 "id"에 의해 고정 된 데이터 구조에 게임 객체 풀을 가지고있다. 내 질문은 풀의 개체에 관계가있는 다른 구조체 (풀에있는 것보다 수명이 짧은)를 처리하는 방법입니다.
은 첫째 나는 다음과 같은 한 :
struct Foo<'a> {
game_obj: &'a GameObject
// etc.
}
을하지만 현존하는 Foo
과 같은 범위에서 GameObject
에 (mutably)를 참조하려고 할 때 그때 차용 검사기 문제의 무리에 달렸다.
그래서 지금은 같은 것을 고려 중이 야 :
struct Foo {
game_obj_id: uint,
// etc.
}
을이 아마 다른 문제를 가지고 있지만 그것은 Foo
의 즉각적인 하나가 관련 GameObject
를 참조 할 수있는 능력을 "독점"해결 않습니다.
어떤 일반적인 접근 방식이 있습니까?
GameObject 풀을 변경해야합니까? 아니면 그걸 [GameObject, .. COUNT]로 유지할 수 있습니까? –
'GameObject'는'RefCell' 안에 저장되어 있으므로'RefCell'의 배열을 만들어야합니다. 그러나,'Rc'를 사용하는 대신'RefCell'에 간단한 빌린 포인터를 사용할 수 있습니다. –
이걸 이해하고 작동 시키려면 며칠이 걸렸지 만 마침내 컴파일과 실행 모두가 있습니다 :) 감사합니다! –