C++ Instantiation
<p>I have <code>Vector</code> class, representing a 3D point, written as follows in <code>Vector.h</code>:</p>

<pre><code>class Vector {
  public:
    float x,y,z;
    Vector(float _x=0.0,float _y=0.0,float _z=0.0){x=_x;y=_y;z=_z;};
    operator float *() { return &amp;x;};
};
</code></pre>

<p>I also declare a <code>extern vector&lt;Vector&gt;model_vertices;</code> on <code>model.h</code></p>

<p>On a <code>model.cpp</code> file I implement <code>Vector.h</code> and declare a <code>std::vector&lt;Vector&gt;model_vertices; globally</code> (yes, I know the vector/Vector thing is confusing, but I must use the Vector naming for consistency). </p>

<p>On <code>model.cpp</code>, when initializing the contents of this vector I use a for loop with the following content: </p>

<pre><code>float X,Y,Z;

offFileStream&gt;&gt;X;
offFileStream&gt;&gt;Y;
offFileStream&gt;&gt;Z;


Vector v=new Vector(X,Y,Z);


model_vertices[loadVertexIndex]=v;
</code></pre>

<p>I get the following error:</p>

<pre><code>error C2440: 'initializing' : cannot convert from 'Vector *' to 'Vector'
</code></pre>

<p>Why?</p>
