Ho la seguente linea:movimentazione NSData inizializzazione rapida non riesce
let jsonResults = NSData(contentsOfURL: Fetcher.URLforLicenseInfo())
Questo compila ed esegue bene, ma se l'inizializzazione di NSData non ottengo un'eccezione più avanti nel codice. Ho cercato di aggiungere un'altra linea:
if jsonResults != nil { ///blah, blah...
ma poi il compilatore si lamenta "Cannot invoke '!=' with an argument list type '(NSData, NilLiteralConvertible)"
Non dovrebbe riconoscere il compilatore NSData initialiser tipo di ritorno come optional?
Se la prima riga viene modificato in 'lasciare jsonResults: NSData! = NSData (contentsOfURL: ... 'può controllare' if jsonResults! = Nil {... 'e funziona bene quando NSData() fallisce. Perché se NSData non restituisce mai nulla !? – user2041042
perché' NSData() 'è costruttore, non metodo, restituisce il riferimento dell'oggetto corrente –
Posso fare la differenza tra metodo e costruttore Nel mio precedente commento quando jsonResults == nil significa NSData() ha restituito nil ... – user2041042