>>7don't sweat it, your code is fine. heck, if you define operator float* in your vector class, you can ditch the explicit typecast for every function call, too.
9.2.12 Nonstatic data members of a (non-union) class declared without an intervening access-specifier are allocated so that
later members have higher addresses within a class object. The order of allocation of non-static data members separated
by an access-specifier is unspecified (11.1). Implementation alignment requirements might cause two adjacent members not to be allocated immediately after each other; so might requirements for space for managing virtual functions (10.3)
and virtual base classes (10.1).