This is a mirror of official site: http://jasper-net.blogspot.com/

Трюки языка C#

| Sunday, March 7, 2010
ИМХО, вместо того, чтобы вкручивать собеседникам мозги насчет заумной семантики event’ов и делегатов или же спрашивать когда написание new IEntity() легально, можно задать вопрос попроще – например “приведите пример необычного поведения или использования языка C#”. Вот несколько примеров, которые пришли в голову в качестве возможных ответов.


Операторы | и & против || и &&

Обе пары операторов могут быть применены к переменным типа bool. Единственная разница – одиночные операторы не сокращают количество вычислений если результат очевиден:

   bool b = false && a(); // a() not called
   bool c = false & a();  // a() called


Передача null в качестве исключения

Как ни странно, передача null в качестве исключения приводит к выбросу NullReferenceException:

   try {
     throw null;
   } catch (NullReferenceException) {
     // will be caught!
   }


Read more: habrahabr.ru

Posted via email from jasper22's posterous

0 comments: