【发布时间】:2009-10-02 00:38:25
【问题描述】:
- (void)playAlarmSound:(NSTimer *)theTimer {
static SystemSoundID soundID/* = 0 */; // ?
if (!soundID) {
soundID = [Utilities createSystemSoundIDFromFile:@"beep" ofType:@"caf"];
}
...
}
SystemSoundID(它是一个 UInt32)是否自动分配为 0?还是我应该明确分配它?我必须这样做并测试它是否没有被 Utilities 方法初始化,因为如果我只执行static SystemSoundID soundID = [Utilities createSystemSoundIDFromFile:@"beep" ofType:@"caf"];,它不会编译。起初我尝试将它分配给 NULL,但后来我意识到它不是指针,所以无论如何,我应该在那里有 = 0 还是它是多余的?
【问题讨论】:
标签: c objective-c initialization zero uint32