How do you store an int or other "C# value types" on the heap (with C#)?
<p>I'm engaged in educating myself about C# via Troelsen's Pro C# book.</p>

<p>I'm familiar with the stack and heap and how C# stores these sorts of things. In C++, whenever we use <code>new</code> we receive a pointer to something on the heap. However, in C# the behavior of <code>new</code> seems different to me:</p>

<ul>
<li>when used with value types like an int, using <code>new</code> seems to merely call the int default constructor yet the value of such an int would still be stored on the stack</li>
</ul>

<p>I understand that all objects/structs and such are stored on the heap, regardless of whether or not <code>new</code> is used.</p>

<p>So my question is: how can I instantiate an <code>int</code> on the heap? (And does this have something to do with 'boxing'?)</p>
