Я использую Xcode 6 Beta 4. У меня странная ситуация, когда я не могу понять, как правильно протестировать дополнительные компоненты.
Если у меня есть дополнительный xyz, это правильный способ проверки:
if (xyz) // Do something
или
if (xyz != nil) // Do something
В документах говорится, что делать это первым способом, но я обнаружил, что иногда требуется второй способ, и он не генерирует ошибку компилятора, но в других случаях второй способ генерирует ошибку компилятора.
Мой конкретный пример - использование синтаксического анализатора GData XML, соединенного с помощью swift:
let xml = GDataXMLDocument(
XMLString: responseBody,
options: 0,
error: &xmlError);
if (xmlError != nil)
Вот если бы я только что сделал:
if xmlError
это всегда вернет истину. Однако, если я сделаю:
if (xmlError != nil)
тогда это работает (как, как это работает в Objective-C).
Есть ли что-то с GData XML и тем, как он обрабатывает необязательные параметры, которые мне не хватает?