Casting size_t to allow more elements in a std::vector
<p>I need to store a huge number of elements in a <code>std::vector</code> (more that the 2^32-1 allowed by unsigned int) in 32 bits. As far as I know this quantity is limited by the <code>std::size_t</code> unsigned int type. May I change this <code>std::size_t</code> by casting to an <code>unsigned long</code>? Would it resolve the problem?</p>

<p>If that's not possible, suppose I compile in 64 bits. Would that solve the problem without any modification?</p>
