I recommend that you register a new type for a float array handle. And then you can register the index operator for this type to access the members. Something like this:
engine->RegisterObjectType("floatarray", sizeof(float*), asOBJ_PRIMITIVE);engine->RegisterObjectBehaviour("floatarray", asBEHAVE_CONSTRUCTOR, "void f()", asFUNCTION(ClearPtr), asCALL_CDECL_OBJLAST);engine->RegisterObjectBehaviour("floatarray", asBEHAVE_INDEX, "float &f(int)", asFUNCTION(FloatAt), asCALL_CDECL_OBJLAST);void ClearPtr(float **ptr){ *ptr = 0;}float &FloatAt(int idx, float **ptr){ return (*ptr)[idx];}
Regards,
Andreas