Re: Multi-dimension STL vector
So basically you need to serialize the data stored in the vector? That won't happen though a cast to char*. All that gives you is the memory-layout of the vector class itself, not the data it is storing. The same thing would happen if you had c-style strings (char*) in your structs. You would see the pointer, but not the string it is pointing to.
One solution to this is to implement operator >> and << for your structs to enable serialization to a std::ostream. (Or maybe your own serializer class.) Casting pointers like you do now, is something you really, really should not do if you aren't fully aware of the consequences.
Insert entertaining phrase here