Eventuali duplicati:
Double Negation in C++ codesta usando '!!' in C/C++ buone pratiche ed è comune?
Per quanto ne so, nessuno C/C++ libri tutorial o manuali menzionano questa tecnica. Forse perché è solo una piccola cosa, non degno di nota.
lo uso perché C/C++ mescola tipo bool con int, long, puntatore, doppio ecc ... insieme. È molto comune dover convertire un bool non bool. Non è sicuro usare il valore (bool) per farlo, quindi io uso !!
per farlo.
Esempio:
bool bValue = !!otherValue;
Non ho sentito alcun problema con esso. – chris
"Non è sicuro usare il valore (bool) per farlo" Perché? –
La questione è stata già discussa qui: http://stackoverflow.com/questions/248693/double-negation-in-c-code e http://stackoverflow.com/questions/8617090/double-negation-in-c- is-it-guaranteed-to-return-0-1 – Juliano