setting a default union member
<p>i'm using templated unions to both assure myself that i always get a 64-bit field for pointers (even on 32-bit machines since there is transmission of data to a 64-bit machine occurring) and to save both the user and myself casting.</p>

<pre><code>template &lt;typename type&gt; union lrbPointer
{
    uint64_t intForm;
    type ptrForm; //assumed that type is a pointer type
};

//usage
lrbPointer&lt;int*&gt; myPointer;
int integers[4];
myPointer.ptrForm = integers;
myPointer.intForm += 2; //making it easy to jump by less then sizeof(int)
</code></pre>

<p>this is working well for me, but i would really love to find a way to make a default member. so that the user does not need to use a .ptrForm after the pointer they wish to use.</p>
