Ответ 1
Он отключает визуальное предупреждение С++ для преобразования в boolean.
Я только что нашел это в файле заголовка руководства guiddef.h:
__inline bool operator==(REFGUID guidOne, REFGUID guidOther)
{
return !!IsEqualGUID(guidOne,guidOther);
}
Есть ли какая-нибудь точка в !!
, или какой-нибудь из разработчиков просто чувствовал себя симпатичным в этот день?
Он отключает визуальное предупреждение С++ для преобразования в boolean.
В этом конкретном случае Alf, вероятно, прав.
В противном случае общепринятым является стандартизация целочисленных значений либо 1 (если они начинаются с нуля), либо 0 (если они начинаются с нуля) для логических операций.