私はこの単純な質問に対する答えをすべて探してきましたが、運がありません。 Objective-Cでは、ドット表記を使用せずに、つまり正規のメッセージ構文のみを使用して、オブジェクトの構造体値にアクセスできますか? (Objective Cでドット表記を使用して構造値にアクセスする必要がありますか?
//Particle.m
#import "Particle.h"
@implementation Particle
@synthesize position;
@end
そして、いくつかの他の* .Mファイルであるとします
//Particle.h
@interface Particle : NSObject {
CGPoint position
}
@property CGPoint position;
@end
と対応する実装:たとえば、のは、パーティクルオブジェクトに定義された位置、我々はするCGPointインスタンス変数を持っているとしましょう我々が持っている)AppController.mを言う:次に
a_particle = [Particle alloc];
[a_particle setPosition:CGPointMake(x_val,y_val)];
はなぜ我々は使用できません。
[[a_particle position] x];
x_val得るのではなくします
a_paticle.position.x;
は、後者が正常に動作していることに注目?また、
でも動作しますが、私はドット表記で混乱するのを避けようとしています。私の勘違いは、構造体インスタンス変数がその値にアクセスするためにドット表記法を使用しなければならない(この場合はx_valとy_val)、これは本当ですか?
ありがとう、これは私が疑ったものですが、私のコードを点で乱雑にしないようにしようとしていました。 –
それは混乱ではなく、単なるC言語です。 – sbooth