zuweisen Ich habe ein SIGABRT
bekam, wenn ich Wert auf die Eigenschaft „MYLOCAL“ der Klasse zuweisen CMRequestManager
in einem Singleton
Init. Was ist los mit dir?SIGABR Ausnahme, wenn versuchen, eine Eigenschaft in einem Singleton
@interface CMRequestManager (private)
@property (nonatomic,strong) NSString* myLocal;
@end
@implementation CMRequestManager
#pragma mark Singleton Methods
+ (id)Manager {
static CMRequestManager *sharedMyManager = nil;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
sharedMyManager = [[self alloc] init];
sharedMyManager.myLocal = @"test test"; //SIGABRT !!!!
});
return sharedMyManager;
}
- (id)init {
if (self = [super init]) {
}
return self;
}
@end
EDIT:
Ok, ich habe eine Lösung gefunden: bewegen Eigenschaft "MYLOCAL" in der Header-Datei außerhalb der Klassenerweiterung:
@interface CMRequestManager
@property (nonatomic,strong) NSString* myLocal;
@end
Diese Arbeit, aber ich verstehe nicht warum. Also die Frage bleibt: Was ist falsch in meinem vorherigen Code?
siehe ths einmal http://stackoverflow.com/questions/14271421/exception-type-exc-crash-sigabt –
Anstelle dieser Zeile ** sharedMyManager = [[Self Alloc] Init]; **, können Sie ersetzen mit ** sharedMyManager = [[CMRequestManager alloc] init]; **. nur eine Vermutung, bitte versuchen Sie es. – user3300864
Ich habe es versucht und mache den gleichen Fehler –