Is there a way to hide private data members of a C++ class away from its users, in the cpp file? I think of the private members as part of the implementation and it seems a
you want to use something like the PIMPL idiom
http://en.wikipedia.org/wiki/Opaque_pointer