¿Qué es un buen caso de uso para uncaught_exception?¿Cuándo usaré uncaught_exception?
Respuesta
Herb Sutter parece dar buenos consejos here. Él no sabe de un buen uso y dice que algunos casos en los que parece ser útil realmente no funcionan.
uncaught_exception
se puede utilizar en destructores, para determinar si se están ejecutando en el contexto de una excepción (donde un lanzamiento finalizará el programa). No estoy en desacuerdo con que la filosofía sea levemente defectuosa, pero depende del uso que usted haga de las excepciones: si su excepción es un error recuperable, puede ser más conveniente tratar de solucionarlo en lugar de intentar que otra parte del código intente lidiar con eso como lo haría normalmente.
También es útil si tiene un código que requiere una excepción activa (esto es raro, pero ocasionalmente tiene una biblioteca de control de excepciones que usará throw;
para obtener la excepción actual, pero eso causará una terminación si no hay ninguna, para que uncaught_exception
se pueda utilizar para determinar si se cancelará (y si es así, ¡posiblemente arrojar una excepción!). Un ejemplo son las nuevas instalaciones de excepción, que también son una parte de boost.
- 1. ¿Cuándo usaré PowerShell sobre las aplicaciones tradicionales?
- 2. derecho de uso de std :: uncaught_exception en un destructor
- 3. ¿Cómo usaré Regex para analizar este esquema de acordes?
- 4. Qué adaptador usaré para usar HashMap en un ListView
- 5. Cuándo usar Parallel.For?
- 6. Qué tecnología usaré para una página web que solicita constantemente datos del servidor
- 7. Si $ _SERVER ['HTTP_REFERER'] no es confiable, ¿qué usaré para garantizar la integridad de la aplicación web?
- 8. ¿Cuándo desarrollar usando Powershell vs C#?
- 9. ¿Cuándo se llama a viewDidLoad?
- 10. ¿Cuándo usar == y cuándo usarlo?
- 11. ¿Cuándo esperar y cuándo anular?
- 12. Ágil: ¿Cuándo funciona bien y cuándo no?
- 13. Cuándo utilizar IList y cuándo utilizar List
- 14. Cuándo usar .mdf y cuándo .sdf?
- 15. cuándo deberíamos usar instanceof y cuándo no
- 16. Cuándo usar categorías y cuándo usar subclases?
- 17. Application.DoEvents, ¿cuándo es necesario y cuándo no?
- 18. ¿Cuándo debería usar Silverlight y cuándo XNA?
- 19. Métodos estáticos: cuándo y cuándo no
- 20. Cuándo utilizar Request.UrlReferrer y cuándo Request.ServerVariables ["HTTP_REFERER"]?
- 21. Cuándo usar Pepino y cuándo usar RSpec?
- 22. cuándo usar Tarea y cuándo usar Subproceso?
- 23. ¿Cuándo uso ByteString y cuándo no?
- 24. Cuándo usar OSGi EventAdmin y cuándo no?
- 25. Cuándo usar `zipmap` y cuándo` map vector`?
- 26. Google App Engine: cuándo usarlo, cuándo no?
- 27. ¿Cuándo utilizas "apply" y cuándo "funcall"?
- 28. Cuándo usar undef_method, y cuándo usar remove_method?
- 29. ¿Cuándo sabe cuándo usar TreeSet o LinkedList?
- 30. Cuándo usar Ruby vs Cuándo usar PHP