exception - suprema - prueba ilicita jurisprudencia
excepciones de prueba-captura en Swift (2)
Esta pregunta ya tiene una respuesta aquí:
- Manejo de errores en Swift-Language 12 respuestas
¿Es posible detectar excepciones en Swift? Dado el siguiente código:
NSException.raise(NSRangeException,
format: "Now you''ve gone too far!",
arguments: CVaListPointer(fromUnsafePointer: UnsafePointer()))
¿Es posible evitar que la excepción bloquee todo el programa? Es decir, ¿cuál es el equivalente Swift de lo siguiente en Objective-C:
@try {
[NSException raise:NSRangeException format:@"Now you''ve gone too far!"];
}
Creo que, a partir de hoy, Swift no lo admite. Lo más probable es que se agregue en betas futuras.
No tiene manejo de excepciones, y esta discusión en el foro de desarrolladores explica por qué puede ser así :
pero tenga en cuenta que Cocoa y Cocoa Touch tradicionalmente no tienen la intención de atrapar excepciones; ellos tienen la intención de que usted no cause que sean arrojados en primer lugar. Los errores ordinarios deben manejarse con tipos opcionales y dentro de los parámetros NSError; debe abordar cualquier situación que haga que falle una aserción (que parece ser el único mecanismo de lanzamiento de excepción en Swift) escribiendo mejor código.