ARCを使用してios5の目的のcに保存しようとしているデータ構造があります。データ構造は次のようなものです-
Class - **Book**
@property (strong) NSArray *pages;
@property (strong) Page *startingPage;
Class - **Page**
@property (strong) Book *book;
@property (strong) Page *nextPage;
@property (strong) Page *previousPage;
想像できる問題は、メモリリークです。ここにはいくつかのサイクルがあります -
Book -> pages -> page -> book
nextPage -> previousPage
Book -> startingPage -> book.
プロパティを弱くすることはできません。そうすると、その値へのポインターが失われるからです。したがって、ページ内のブックを弱いものとして作成すると、ページの割り当てを解除しようとすると、ブックの割り当てが解除されます。ただし、本は割り当てられたままにしておきたいです。
このデータ構造を保存できる別の方法はありますか?
ありがとう!