Swift: Testen von Optionen auf Null
Ich verwende Xcode 6 Beta 4. Ich habe diese seltsame Situation, in der ich nicht herausfinden kann, wie ich Optionen angemessen testen kann.
Wenn ich ein optionales xyz habe, ist der richtige Weg zu testen:
if (xyz) // Do something
oder
if (xyz != nil) // Do something
In den Dokumenten heißt es, dies auf die erste Art und Weise zu tun, aber ich habe festgestellt, dass manchmal die zweite Art und Weise erforderlich ist und keinen Compilerfehler erzeugt, manchmal jedoch auf die zweite Art und Weise einen Compilerfehler.
Mein spezielles Beispiel ist die Verwendung des GData-XML-Parsers, der mit swift verbunden ist:
let xml = GDataXMLDocument(
XMLString: responseBody,
options: 0,
error: &xmlError);
if (xmlError != nil)
Hier, wenn ich es nur getan hätte:
if xmlError
es würde immer wahr zurückkehren. Wenn ich jedoch tue:
if (xmlError != nil)
dann funktioniert es (wie es in Objective-C funktioniert).
Gibt es etwas mit dem GData-XML und der Art und Weise, wie es mit Optionen umgeht, die mir fehlen?