問題タブ [synthesize]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
objective-c - Objective-Cの合成プロパティをオーバーライドするのはOKですか、それとも悪いですか?
NSAssertを追加したかったので、合成されたプロパティをオーバーライドしました。
これは実行しても問題ありませんか(つまり、オーバーライド)、または悪い習慣と見なされますか?
objective-c - @synthesizeと@dynamic、違いは何ですか?
@property
with@dynamic
またはを実装することの違いは何@synthesize
ですか?
objective-c - Objective-cでクラスBからクラスAの値を設定するだけです
Objective-Cで、クラスからクラスsynthesized (assigned)
に属性を設定したいCompass
B
これは私のコードです...
ただし、このエラーが発生します...
自分のセッターを使用して、のように呼び出すことで、このエラーを回避することができました[ind updateValue:11.0];
。[(Compass*)currentDevice analogValue];
ただし、後で別のクラスのように合成ゲッターを呼び出すと、次の例外が発生します...
誰かが私がこれをどのように行うべきかを理解するのを手伝ってくれませんか。
ios - デリゲートの観点からの合成ステートメントの説明?
インターフェイスファイルに次のコードがあります。
実装ファイルに次の行があります。
アンダースコアを使用した合成とはどういう意味ですか?つまり、通常の合成が何をするかを知っています。すべてが正常に機能し、他のサイトでこのコード例を確認しました。
objective-c - Xcode 4 がインスタンス変数を自動生成するのはなぜですか?
私は C# 開発から来て、Objective-C と Xcode 4 の学習を始めたばかりです。私が理解している限り、値をチェック/制御する必要がない場合、「@synthesize」はプロパティの getter/setter メソッドを置き換えています。読んだり書いたりしています。
しかし、なぜ Xcode 4 は自動的にインスタンス変数を作成するのでしょうか?
これで十分ではないでしょうか:
それ以外の:
?
ゲッターやセッターがない/必要ないのに、実際のプロパティの代わりにインスタンス変数を使用/したいのはなぜですか?
前もって感謝します!
メンフィズ
編集:
@synthesize がゲッター/セッターを置き換えていることは理解していますが、この部分は何に適しています= _myProperty;
か? 「myProperty」を直接使用できるのに、なぜインスタンス変数が必要になるのでしょうか? たとえば、セッターが値の状態をチェックする場合は、「_myProperty」を使用することを理解できます。このチェックをスキップしたい場合は、_myProperty を使用します。しかし、@synthesize を使用しているため、何らかのチェックを行うセッターが配置されていません。では、なぜインスタンス変数を持っている/欲しいのでしょうか?
答え:
MattyG の投稿のコメントを参照してください。
objective-c - @synthesize に ivar 名を指定することは、冗長または適切な方法と見なされますか?
私はiOS(cs193p)でスタンフォードiTunes Uコースを見てきました.@synthesize
しかし、宣言されたプロパティに関する Cocoa のドキュメントを閲覧している間、私はこれを実際に見たり、他のサンプル コードで見たりしませんでした。
なぜこれが必要なのですか?@synthesize
プロパティ名で を使用するだけで十分ではありませんか? これにより回避できる特定の問題はありますか?
iphone - @Synthesize IBOutlet (UIScrollView) が機能しない
これは、正しく合成されていないアウトレットに関するものです (UIScrollView)
ある特定のケースでは、次のように宣言されたインターフェイスがあります。
そして実装に……。
しかし、デバッグ モードでは、self->scrollView の横に常に 0x0 があることがわかります。のような操作を実行する
常にゼロの原点、高さ、幅を返します(正しく合成されていないためと思われます)
0x0 は、メモリ内のどの場所も指していないことを意味しますか? これは正しく合成されていないということですか?アウトレットから IB のスクロールビューへのリンクがどこかに壊れている可能性がありますか?
乾杯ケビン
objective-c - Objective-Cの@propertyおよび@synthesizeのベストプラクティス
ですから、私はObjc-Cを初めて使用し、変数の使用@property
と使用について学習しているところ@synthesize
です。次に、変数にアクセスする方法を考えていました。[self var]
またはまたは何を介してアクセスする必要がありますself.var
か?これは私の質問をコードで示しています:
objective-c - Objective-C では、@synthesize の後のコードは何を意味しますか?
悪いタイトルで申し訳ありません。この質問を他に何と呼ぶべきかわかりませんでした。とにかく、次のものがあるとします。
私の質問は、display と _display の違いは何ですか? それぞれ何を指していますか?
明確にするために、 @synthesize が何をするかは知っていますが (getter と setter を作成します)、display と _display が参照する違いが正確にはわかりません。
私はJavaに堪能なので、可能な限りあなたの答えをJavaに関連付けてください。
ありがとう
objective-c - @synthesize は Objective-c でどのような条件下で自動化されますか?
@synthesize は Objective-c でどのような条件下で自動化されますか?
おそらくLLVM 3.0以降を使用している場合は?@synthesize
ネットを読んだところ、Xcode 4以降は不要のようです@synthesize
。
プロパティが自動的に合成されない理由への回答の一部は、状況によっては @synthesize を省略できることを暗示しているようです。
@synthesize
将来のある時点で自動化される可能性のある別の (古い) 参照ヒント。