¿Lanzar una excepción en un método objetivo-C cuando un parámetro de entrada requerido es nulo?

StackOverflow https://stackoverflow.com/questions/7816475

Pregunta

Observando la guía general sobre el uso de excepciones en Objetivo-C (p. Ej. Lanzar una excepción en Objective-C/Cocoa) Todavía no estoy muy seguro de este caso:

¿Lanzar una excepción en un método objetivo-C cuando un parámetro de entrada requerido es NIL Best Practice/OK?

Si no, ¿qué enfoque sería típico y luego en Objective-C?

¿Fue útil?

Solución

Esa sería una excepción válida, o incluso una afirmación (que a su vez lanzará una excepción). ahí está el NSParameterAssert La macro definida ya hará lo que quieras.

Otros consejos

Un Nsassert es algo más destinado a la propia comodidad de los desarrolladores. Los desarrolladores lo usan para verificar los supuestos/condiciones, etc. Una cosa a tener en cuenta es que Nsassert no se compilará en su código en una compilación de versión.

Usted hace @throw nsexception para su situación, ya que solo están destinadas a estas situaciones cuando desea manejar los casos para entradas no válidas a su código en tiempo de ejecución.

Nserrors también es otra instalación proporcionada por Apple. Se utiliza generalmente para condiciones no deseadas que no son errores de programación (por ejemplo, se defectora el hardware Bluetooth y su aplicación relacionada con Bluetooth depende de eso)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top