VECTOR2 a;
D3DXVECTOR2 b = a;

D3DXVECTOR2に自分で定義したVECTOR2を代入したいので以下のようにやったんですが
ランタイム スタック オーバーフローの警告が出ます。
警告を出さないようにするにはどうしたらいいのでしょうか。

class VECTOR2{
VECTOR2():x(0), y(0){}
operator D3DXVECTOR2() const { return static_cast< D3DXVECTOR2>( *this); }
FLOAT x, y;
};