"Debug X86-64"モード(Xcode 3.6)でプログラムをビルドしていて、すべてが問題なく動作しています。しかし、私はちょうど「リリースX86-64」モードに切り替えてみましたし、コンパイル時に私のプロパティのそれぞれについて、次のエラー受信:合成されたプロパティとivarエラー
「x」は私の特性の一つ、最初のもの "会社であるSynthesized property 'x' must either be named the same as a compatible ivar or must
explicitly name an ivar.
を(私はこのタイプの51のエラーを受けました)。私の.hインターフェイスファイルでは、私はアイテムをこのようにリストアップしました:
@property (copy) NSString *company,
*address1,
*address2,
*city,
*usState,
*zip,
*phone,
*fax,
*email,
*web; // etc, etc.
私.M実装ファイルでは、私はので、それらを合成しました:
@synthesize company,
address1,
address2,
city,
usState,
zip,
phone,
fax,
email,
web; // etc, etc.
私の理解では、ということでしたインスタンス変数はこれらのプロパティに対して自動的に作成されます...実際には、それらは「解放」モードでコンパイルしようとするまで完全に動作しているようです。
私はこれを説明しなければならない本に何も見つかりませんでした。私は何か間違っている、より具体的には、これを "リリース"コンパイルで修正するために何を含めるべきですか?
ありがとうございます!
OKでこれらのプロパティを追加するので、私はちょうど対象に、より多くの光を追加しているようだ別のスレッドを発見した: にhttp:// stackoverflowの.com/questions/7110245/error-building-32-bit-os-x-app 私は64ビットマシンを持っている間にOS 10.6.8を実行しています。それと関係がありますか?コンパイラが32ビットモードでコンパイルしようとしていますか? –
私はこれで良くなっているかもしれませんが、私はそれを修正する方法を知っていると思っていますが、確認が必要です。私はこのスレッドを見つけました: http://stackoverflow.com/questions/10043624/property-declaration-wo-explicit-ivar-naming と私は間違いなく、現在のように見えるインターフェイスのセクションでインスタンス変数を宣言しませんでしたこの: @interface DBContactRecord:NSObjectの { } 最も参考になるよう、私はそれが次しようと、誰かが確認できた場合:) –
Xcodeプロジェクトのビルド設定は、あなたが構築しているかどうかを教えてくれます32ビット(i386)または64(x86_64)。ちなみに、 "Xcode 3.6"のようなものはありません。 –