2016-04-13 34 views
0

yapıyor mu: Swift içindeKendi kendini yapıyor = self init; kendini iade et; objektif-C'de hızlı olarak self.init() ile aynı etkiye sahiptir?

self.init() 

:

self = self.init; 
return self; 

objektif-C ile aynı etkiye sahiptir? Bu bağlamda Örneğin

:

else if([format.dateFormatType compare: ISO8601DateFormatType] == NSOrderedSame) { 
     NSString *isoFormat = ISO8601DateFormatType; 
     NSString *dateFormat = (isoFormat != nil) ? isoFormat : ISO8601DateFormatType; 
     NSDateFormatter *formatter = [DateFormat CustomDateFormat: dateFormat]; 
     formatter.locale = [NSLocale localeWithLocaleIdentifier: (@"en_US_POSIX")]; 
     formatter.timeZone = [NSTimeZone localTimeZone]; 
     formatter.dateFormat = dateFormat; 
     NSDate *date = [formatter dateFromString:(string)]; 
     if (date != nil){ 
      return [self initWithTimeInterval: 0 sinceDate: date]; 
     } 
     else { 
      self = self.init; 
      return self; 
     } 
    } 
+0

Eğer eksik olan ise bunu kullanmak için? – PeejWeej

+0

Soruyu size gösterecek şekilde düzenleyeyim. –

+0

Aslında eşdeğerdir [return [self init]; – vadian

cevap

1

self.init() eşdeğer Objective-C aynı kapsamda belirlenen veya varsayılan başlatıcı çağırmak hangi bağlamda

if (date != nil) { 
    return [self initWithTimeInterval: 0 sinceDate: date]; 
} else { 
    return [self init]; 
}