2012-02-22 12 views
4

ARCのない以前の目的のCコードをARCに変換しようとしています。私はXcodeのような手順を休止しています:ファイル>編集>リファクタリング> ARCに変換。古い目的のCコードをARC(自動参照カウント)に変換する際の問題

しかし、多くのエラーが発生しているため、変換できません。私はこれについて調べました。 Xcode Targetのビルド設定を変更しようとしています。

+0

エラー?どのようなエラー? – Costique

+0

お返事ありがとうございます。 Objective-Cに変換できないようなエラーウィンドウが表示されるARC Xcodeは、変換が進行しないようにする84の問題を発見しました。すべてのARC準備完了の問題を修正し、もう一度やり直してください。 –

答えて

6

ARCに変換ツールは、プロジェクトを突然ARCにする魔法の弾丸ではありません。このツールは、release & retainなどのすべてのコールを削除するだけで、autoreleaseプールを新しい@auto release {}スタイルに切り替えることもできます。 これを実行する前に、飛行前のスクリプトを実行して、複雑すぎるものを探し出し、エラーとしてフラグを立てて、それぞれを調べて正しい修正を加えることができるようにします。

これらの84の問題のそれぞれを実行し、それぞれの問題を解決する必要があります。ほとんどの場合、複数の場所にある半ダースほどの種類のエラーがありますが、それぞれの場合には若干異なる解決策があります。 Xcodeは、いくつかのエラーの修正を提案しているかもしれません(白い四角の停止記号が表示されるエラーのいずれかが修正されている可能性があります。いくつかの問題は、Googleの小さな助けを借りて簡単に解決できます。最終的にはそれよりも多くのエラーが発生する可能性があります(私はエラーを修正し、それをより多く報告して変換しようとするたびに1つのプロジェクトを変換しました)。

いくつかの調査をしてもわからないエラーについては、ここで質問を投稿してください。ARCに変換する際に問題を引き起こす可能性のあることがたくさんあるため、具体的にしてください。

+3

エラーがサードパーティのライブラリから来た場合は、ファイルごとにARCを無効にすることもできます。 –

+0

ARCの問題を手作業で何十件も修正したくないのですが、ARCツールに変換するのは何ですか? はい、このツールは魔法の弾丸ではありませんが、release&retainや[super dealloc]の削除などの単純なARCエラーの変換に適している必要があります。以前のバージョンでもうまくいきました。 Xcode 6で何か間違っているように見えます。 – Vladimir

+0

@Vladimir、あなたが自分で問題を修正するのが好きでないならば、Appleが問題について知っているか、他の人にあなたのためにその部分を払うか、ARCに切り替えないように、バグ報告を提出してください。 2012年2月からXcodeで何かが変更され、今ではARC変換ツールがこれまで以上に機能しなくなる可能性は十分ありますが、Xcodeのサイズを考えればApple自身が問題を見つけることはほとんどありません。彼らはまた、彼らがそれについてあなたがそれをあなた自身も報告すると報告されたことを知っていても、彼らがそれに関して持っているレポートの数に基づいて修正を優先させます。 – theMikeSwan

関連する問題