
I agree on your point, on the other hand, you can do this : class vector3d { public: float x, y, z; float operator[]( int index ) const { return ((float *)this)[index]; } float & operator[]( int index ) { return ((float *)this)[index]; } /* ... */ }; in which case "v.x" and "v[0]" are the same thing. this is what I currently have. Now some people will argument its a hack maybe. Olivier. On 9/21/06, Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr> wrote:
On Wed, 2006-09-20 at 17:48 +0100, Olivier Grant wrote:
Right now I have three simple vector classes - ranging from vector2d to vector4d - that are not templetized since I like the idea of being able to access coordinates directly by their name
Unfortunately, this is not the best choice. As sson as you will have to iterate through the coordinates, you will find that having an array is necessary (at least if you do not want to have an awful efficiency....).
Theo.
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost