Dalla lettura della revisione N3242 del draft C++ 11, sembra che alcuni componenti delle interfacce della libreria standard (in particolare thread e locking) dipendano dalla gestione delle eccezioni.Esiste un elenco di interfacce di libreria standard C++ 11 che richiedono eccezioni abilitate?
Poiché lavoro molto con le eccezioni disabilitato, mi chiedo quali componenti/funzionalità della libreria saranno (praticamente o logicamente) inutilizzabili senza la gestione delle eccezioni abilitata?
Praticamente, tutte le funzionalità sono utilizzabili, fino a quando non viene generata un'eccezione effettiva. Quindi il tuo programma si blocca. Se una funzione di libreria può lanciare, questo è specificato nello standard, quindi in un modo c'è una lista - lo standard stesso. –
@ n.m. sembra che tu abbia letto il mio post usando la definizione sbagliata di "praticamente": http://dictionary.reference.com/browse/practically. in caso contrario, c'è una differenza nella complessità e nella localizzazione di cose come 'std :: vector.at (size_t)' rispetto al threading e al lock di un programma/ambiente. avendo implementato le librerie di threading e locking, posso dirvi che potete difendervi facilmente e in modo prevedibile. (segue) – justin
(cont) difendersi da quest'ultimo è molto più complesso. quando le cose vanno male, un'eccezione non gestita non è una soluzione (per alcuni di noi). non posso semplicemente ignorare questi errori :) quindi, non posso fare affidamento sulle implementazioni di threading e locking della libreria perché l'unica difesa offerta dalla libreria sono le eccezioni. in conclusione, le interfacce di threading e locking non sono adatte ai programmi in cui le eccezioni sono disabilitate. Spero possa aiutare. – justin