X コードで、自動参照カウント (ARC) を使用して新しいプロジェクトを作成し、既存の非 ARC プロジェクトを [ファイル] --> [ファイルを追加] で追加すると (ワークスペースへの追加と見なされますか?ワークスペースの用語がわからない)、それはうまくいくでしょうか?このプロジェクトで私が書く新しいコードは ARC コードになるのでしょうか?
この方法でプロジェクトを追加すると、ファイルは「コンパイル済みソース」にリストされません。したがって、「-fno-objc-arc」を設定するものは何もありません。
MapBox-ios-example がこれを行っているように見えることに気付きました。追加するだけで、何も考えませんか?
別の質問は、ARC プロジェクトにリンクしている非 ARC 静的ライブラリ (.a) の場合はどうなるかということです。非 ARC ライブラリのクラスで何か特別なことをする必要はありますか?
編集: こんにちは、応答が遅くなって申し訳ありません。
私の 2 番目の質問には、ほぼ全員がかなり良い回答をしてくれました。ありがとうございました。nverinaud がその質問に最初に答えたので、私は彼の功績を認めることを学んでいます。(賞金を授与するのに時間制限があるようです?答えが残っている場合は、nverinaudにクレジットを与えたいと思います。)
しかし、最初の質問にはまだ疑問があります。Mapbox の例と手順に従って、ARC 以外の「プロジェクト ファイル」自体を現在の ARC プロジェクトに追加しています。ソース ファイル (.m .c) を個別にプロジェクトに追加するのではなく、プロジェクト ファイルを追加していることを強調しておく必要があります。.m と .c は、別のフォルダー内の別のプロジェクトにあるようです。そして、この Mapbox プロジェクトには [view release] のような呼び出しがあり、警告が存在しないため、警告を黙らせるための特別な -fno-objc-arc フラグは必要ありません。
通常、ARC 以外のソース ファイルを ARC プロジェクトに追加すると、コンパイラ ステージを通過させないコンパイラ警告が表示されることを理解しています。ただし、私の場合は何も得られません。特に私の質問は、フラグをどのように配置するかではなく(私は知っています)、フラグが必要かどうかです(私はそうではないと推測しています。試してはいけません。) なぜなら、フラグがなければ警告は何もないからです。そして、警告がなかった理由と、私が正しいことをしているかどうかについて、何らかの説明を求めています。
これがスクリーンショットです。. OfflineSpotty は私が作成した ARC ファイルです。MapView.xcodeproj は、私が追加した非 ARC プロジェクトです。うまくいけば、イメージが少し明確になります。