title: When to lazy load?
body: <p>I lazy load all my members.  I have been doing this for a while and simply taken lazy load to be a good thing at face value.</p>
  
  <p>Let's say we have</p>
  
  <pre><code>public class SomeClass
  {
     public int anInt;
     public SomeReferenceType member1;
  
     public SomeClass()
     {
        //initialize members in constructor when needed (lazy load)
        anInt = new int();
        member1 = new SomeReferenceType();
     }
  }
  </code></pre>
  
  <p>Are there any disadvantages to doing things this way? Is this a proper lazy load pattern?  Does it make sense to lazy load a value type (with modern RAM does it even matter)?</p>
  
  <p><hr />
  After what I have learned from your answers, I would like to know if there is any difference between the above and this...</p>
  
  <pre><code>public class SomeClass
      {
         public int anInt;
         public SomeReferenceType member1 = new SomeReferenceType();
  
         public SomeClass()
         {
  
         }
      }
  </code></pre>