Hat jemand eine effizientere Möglichkeit gefunden, zu überprüfen, ob eine Variable null ist, und sie dann instanziieren? Ich weiß, dass die klassische Art und Weise zu schreiben ist:Nullobjekte effizient prüfen und beheben
if (myObject == nil) {
//instantiate and do other stuff
}
Oder
if (!myobect) {
//do stuff
}
die zu Kessel-Platte-esque für meinen Geschmack scheint, vor allem, wenn ich es oft zu tun haben.
EDIT: Hatte eine Inspiration, würde so etwas funktionieren?
-(id)instantiateIfObjectIsNull:(id)object withClass:(Class*)class {
if (object == nil) {
object = [[Class alloc]init];
}
return object;
}
Gibt es einen effizienteren Weg zu überprüfen, ob etwas "Null" ist und wenn ja, es zu instanziieren, als zu prüfen, ob es "Null" ist und wenn ja, instanziieren Sie es? Nicht wirklich ... Dies ist der effizienteste Weg, es zu tun. Sie können Ihre if-Anweisung anders schreiben, aber im Wesentlichen werden Sie sich nicht viel ändern. Zu überprüfen, ob etwas "nil" ist, ist dasselbe wie es zu negieren ('(myObject == nil) == (! MyObject'), aber ansonsten bleibt nichts mehr zu tun. –
Wirklich? Auch nur eine einfache Instanzmethode, die ich könnte dies delegieren? – CodaFi
Nein. Es gibt keinen Grund zu, es würde sogar Overhead generieren. –