我正在创建一个应用程序,让音乐家练习他们乐器的指法。我有一个名为"Note“的类,用来创建新的音符,我有一个名为" scales”的类,它将音符组织成音阶,让它们被指代。然而,每当我想制造新的音阶时,我必须一遍又一遍地声明相同的音符。是否有一种方法可以创建一个函数来创建所有的注释以供无限使用?
创建新的Notes并指定名称和指法:
Note *Bb = [[Note alloc]init]; Bb.noteName = @"Bb"; [Bb setFingering:0 :button1 :button2 :button3 :button4];
创造新的规模:
Scale *Bb_major = [[Scale alloc]init];
[Bb_major makeScale:Bb :C :D :Eb :F :G :A];makeScale声明:
-(void)makeScale:(NSObject*)note1 :(NSObject*)note2 :(NSObject*)note3 :(NSObject*)note4 :(NSObject*)note5 :(NSObject*)note6 :(NSObject*)note7;
谢谢。
发布于 2014-04-18 20:43:42
在注中添加静态方法:
+ (Note *) noteBb
{
static Note *Bb = nil;
static dispatch_once_t onceToken = 0;
dispatch_once(&onceToken, ^{
Bb = [[Note alloc]init];
Bb.noteName = @"Bb";
[Bb setFingering:0 :button1 :button2 :button3 :button4];
});
return Bb;
}https://stackoverflow.com/questions/23161780
复制相似问题