0

首先对不起我的英语

我的代码有问题,我尝试做一个健全的程序,但在我的代码中出现了这个错误:

Invalid operands to binary expression ('CFURLRef' (aka 'const struct __CFURL *') and 'CFURLRef')

这是我的完整代码:

- (IBAction)tocar:(id)sender {
CFBundleRef mainBundle = CFBundleGetMainBundle();
CFURLRef soundfileURLRef; 
soundfileURLRef *CFBundleCopyResourceURL (mainBundle, (CFStringRef) @"Botao", CFSTR ("mp3"), NULL);
UInt32 SoundID;
AudioServicesCreateSystemSoundID(soundfileURLRef, &SoundID);
AudioServicesPlaySystemSound(SoundID);
}
4

2 回答 2

2

假设您编写的代码是您实际使用的代码,这一行很奇怪:

soundfileURLRef *CFBundleCopyResourceURL (mainBundle, (CFStringRef) @"Botao",
    CFSTR ("mp3"), NULL);

星号 ( *) 应该是等号 ( =)

我认为应该是

soundfileURLRef = CFBundleCopyResourceURL (mainBundle, (CFStringRef) @"Botao", 
    CFSTR ("mp3"), NULL);
于 2013-06-29T18:49:44.643 回答
0

你的CFBundleCopyResourceURL行搞砸了,等号变成了星号;

soundfileURLRef *CFBundleCopyResourceURL (mainBundle, 
                          (CFStringRef) @"Botao", CFSTR ("mp3"), NULL);

...应该...

soundFileURLRef = CFBundleCopyResourceURL(mainBundle, 
                          (CFStringRef) @"Botao", CFSTR ("mp3"), NULL);
于 2013-06-29T18:49:53.023 回答