2016-05-18 10 views
8

ho un problema con un codice che gettare il messaggio successivo:non può convertire il valore di tipo 'String' digitare 'NSString' in coercizione quando uso swift2 sé con ubuntu 16.04

error: cannot convert value of type 'String' to type 'NSString' in coercion 
      return (self as NSString).substringWithRange(range) 

potevo risolverlo prima, ma non con un auto chiamata, ecco il codice:

let range = expression.rangeOfFirstMatchInString(self, options: [], range: NSMakeRange(0, self.utf16.count)) 
    if range.location != NSNotFound { 
     return (self as NSString).substringWithRange(range) 
    } 
    return nil 
+1

Prova 'ritorno NSString (stringa: auto) ...' –

+0

sì, ha funzionato, grazie :) –

risposta

9

il compilatore veloce in Ubuntu non auto riconoscere che NSString ha un costruttore che ottiene String come argomento. (Al momento della compilazione il compilatore lo interpreta)

Invece fare il lavoro da voi stessi scrivendo

NSString(string: self) 
Problemi correlati