Initializing member variables
<p>I've started to pick up this pattern:</p>

<pre><code>template&lt;typename T&gt;
struct DefaultInitialize
{
   DefaultInitialize():m_value(T()){}
   // ... conversions, assignments, etc ....
};
</code></pre>

<p>So that when I have classes with primitive members, I can set them to be initialized to 0 on construction:</p>

<pre><code>struct Class
{
  ...
  DefaultInitialize&lt;double&gt; m_double;
  ...
};
</code></pre>

<p>The reason I do this is to avoid having to remember to initialize the member in each constructor (if there are multiple constructors). I'm trying to figure out if:</p>

<ul>
<li>This is a valid pattern?</li>
<li>I am using the right terminology?</li>
</ul>
