title: very simple delegate musing
body: <p>Sometimes the simplest questions make me love C/C++ and C# more and more.</p>
  
  <p>Today sitting on the bus musing aout delegates I remembered 
  reading somwhere you don't need to use the new keyword when instaniating
  a new delegate.</p>
  
  <p>For example:</p>
  
  <pre><code>    public static void SomeMethod(string message)
      {
        ...
      }
  
      ...
  
  
     public delegate void TestDelgate(string message); //Define a delegate
  
      ...........
  
     //create a new instance ..METHOD 1
     TestDelgate t = new TestDelgate(SomeMethod);  
  
     //OR another way to create a new instance ..METHOD 2
     TestDelgate t = SomeMethod;   //create a new instance ..METHOD 2
  </code></pre>
  
  <p>So todays questions are </p>
  
  <ol>
  <li><p>What happens under the hood in method 2. Does the compiler expand method 2 into method 1, hence writing TestDelgate t = SomeMethod; is just a shortcut for 
  TestDelgate t = new TestDelgate(SomeMethod);, or is there another reason for the exsitence of method 2  </p></li>
  <li><p>Do you guys think method 1 or method 2 is better for readability (this is a subjective question, but I'd just like to get a unscientific feel of general opinion of stackoverflow :-))</p></li>
  </ol>