Making C++ Objects Persistent: The Hidden Pointers
01 December 1993
C++ objects of type that have virtual functions or virtual base classes contain volatile ("memory") pointers. We call such pointers "hidden pointers" because they were not specified by the user. If such C++ objects are made persistent, then these pointers become invalid across program invocations. We encountered this problem in our implementation of O++, which is a database language based on C++. O++ extends C++ with the ability to create and access persistent objects.