Mar. 28th, 2013

serpentthegreen: (Default)
Я привык писать сравнения в Yoda Conditions, чтобы когда пишешь быстро, чего-нибудь не туда впопыхах не присвоить.

Типа так : if( null == object.Whatever )
Для тех, кто не понял

if( object.Whatever = null )
а) всегда выполнится
б) параллельно обнулит object.Whatever

Так вот, используя одну широко известную библиотеку для шарпея, наткнулся на следующее поведение

if( null == object.Whatever ) не выполняется, при object.Whatever, равном null, при этом

if( object.Whatever == null ) -- всё ок.

Повбывав людей, делающих оператор сравнения несимметричным.
Page generated Sep. 20th, 2017 07:23 am
Powered by Dreamwidth Studios