2 に答える
非 ARC コードを ARC で有効にする方法については、Transitioning to ARC Release Notes を参照してください。Midhun がほのめかしているように、retain参照をstrong参照に置き換え、 と を削除releaseしautoreleaseます。への呼び出しも削除します[super dealloc]。というわけで変換は難しくありませんが、意識すべき項目がいくつかあります。
そうは言っても、このサンプルコードが「かなり良い」というあなたの評価には同意しません。元の作者を侮辱することなく、少し時代遅れであり、現代の慣習ではなく歴史的な慣習を適用しています (たとえば、プロパティに ivar を明示的に宣言し、ivar 名にアンダースコアを使用しないなど)。また、コードにいくつかのバグがあることにも気付きました (プロパティの欠落などのマイナーなもの、foundCharactersルーチンのバグなどのより重要なもの)。
コードをクリーンアップし (ARC に変換し、これらの問題の多くに対処しました)、GitHubのリポジトリにアップロードしました。注、私は2つのことをしました:
コードを変更して、その実践 (これがクラス) をもう少し現代的にし、
UsersParserこれらの小さなバグのいくつかを修正しました。また、このコードをより柔軟に表現
XmlArrayParserした . これを呼び出すメソッドは、探している要素を理解する必要がありますが、パーサー自体は気にしません。
これが助けになることを願っています。
ARCに変換すると、何もありません
- 保持
- リリース
- 自動解放
キーワード。
理解を深めるために、Xcode ARC 変換ツールを使用してそのサンプル コードを変換する必要があります。それを完了すると、理解が深まります。サポートについては、このチュートリアルを参照してください。