Objective-Cでのstaticなメンバ変数について、ちょっと困ったので使い方をまとめておきました。
宣言部分はこちらです
#import <Foundation/Foundation.h>
@interface SampleClass : NSObject {
}
+(NSString*)getString;
+(void)setString:(NSString*)str;
@end
定義部分はこちらです。
staticなオブジェクトを宣言はidにしておくほうがよさそうです。
#import “SampleClass.h”
@implementation SampleClass
static id string = @”hogehoge”;
+(NSString*)getString {
return string;
}
+(void)setString:(NSString*)str {
string = [str copy];
}
@end
こうすることによって、メンバ変数をグローバル変数のように扱うことができます。