J'essaie de traiter la chaîne et de définir "essayer"
var str = String()
do{
let str = try self.processMyString(strToProcess)
}catch{
}
Mais je reçois cette erreur:
no calls to throwing functions occur within 'try' expression
Chacun d'entre vous sait pourquoi de cette erreur ou comment puis-je la réparer?
Je vais vraiment apprécier votre aide.
Si votre fonction peut provoquer des erreurs, définissez-la comme ceci
func canThrowErrors() throws -> String
comme trouvé ici
Ensuite, vous pouvez utiliser l’essai comme vous l’avez déjà fait.
processMyString
n'est pas throw
, il n'y a donc aucune raison pour qu'il soit dans un bloc do
/catch
.
De plus, vous déclarez une constante let
locale nommée str
qui masque la variable var
extérieure nommée str
, ce que vous n’avez probablement pas voulu.
Faites juste ceci:
let str = self.processMyString(strToProcess)