title: Optional parameter for reference to pointer?
body: <p>How do I declare the second parameter as optional?</p>
  
  <pre><code>template &lt;typename T&gt;
  inline void Delete (T *&amp;MemoryToFree,
      T *&amp;MemoryToFree2 = ){
      delete MemoryToFree;
      MemoryToFree = NULL;
  
      delete MemoryToFree2;
      MemoryToFree2 = NULL;
  
  }
  </code></pre>
  
  <p>I tried several things after the = operator, like NULL, (T*)NULL etc. Can this be done?</p>
  
  <p>The only way the compiler let me do it was using an overload...</p>
  
  <pre><code>    template &lt;typename T, typename T2&gt;
  inline void Delete (T *&amp;MemoryToFree, T2 *&amp;MemoryToFree2){
      delete MemoryToFree;
      MemoryToFree = NULL;
  
      delete MemoryToFree2;
      MemoryToFree2 = NULL;
  }
  </code></pre>