(no subject)
Mar. 28th, 2013 04:52 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Я привык писать сравнения в Yoda Conditions, чтобы когда пишешь быстро, чего-нибудь не туда впопыхах не присвоить.
Типа так : if( null == object.Whatever )
Для тех, кто не понял
if( object.Whatever = null )
а) всегда выполнится
б) параллельно обнулит object.Whatever
Так вот, используя одну широко известную библиотеку для шарпея, наткнулся на следующее поведение
if( null == object.Whatever ) не выполняется, при object.Whatever, равном null, при этом
if( object.Whatever == null ) -- всё ок.
Повбывав людей, делающих оператор сравнения несимметричным.
Типа так : if( null == object.Whatever )
Для тех, кто не понял
if( object.Whatever = null )
а) всегда выполнится
б) параллельно обнулит object.Whatever
Так вот, используя одну широко известную библиотеку для шарпея, наткнулся на следующее поведение
if( null == object.Whatever ) не выполняется, при object.Whatever, равном null, при этом
if( object.Whatever == null ) -- всё ок.
Повбывав людей, делающих оператор сравнения несимметричным.