iOS - 成员引用是一个指针?

时间:2012-10-04 09:51:56

标签: iphone ios ipad

我正在尝试使用此

将AVAudioPlayer分配给属性
NSURL *soundURL = [[NSBundle mainBundle] URLForResource:@"error"
                                          withExtension:@"aiff"];
AVAudioPlayer *avSound = [[AVAudioPlayer alloc]
           initWithContentsOfURL:soundURL error:nil];
self.soundError = avSound;

我在最后一行收到错误说:成员引用类型'struct objc_class *'是一个指针;也许你的意思是使用' - >'吗

该属性声明为

@property (nonatomic, strong) AVAudioPlayer *soundError;

指针?我不明白。

感谢

2 个答案:

答案 0 :(得分:16)

您没有发布完整方法,但错误可能表示您尝试在类方法中分配属性,而不是在实例方法中。

检查你的方法声明是否正确 - 可能应该是

- (void) someMethod

而不是

+ (void) someMethod

答案 1 :(得分:0)

要使用点表示法,您需要getter / setter方法。 如果您不提供自己的方法,请使用

@synthesize soundError;

否则,使用self->soundError设置ivar。