The virtual matrix class is derived from a class of a vector of doubles stored in the virtual memory system. The virtual vector gives the matrix class access to the virtual memory. Holub[14] developed a class of integer vectors with a set of overloaded operators. He created the class to ease access to the vmm, and demonstrate several aspects of using classes. Here, the integer class was rewritten for doubles, and the operators were stripped in favor of using them on the matrices.
Again, the virtual vector should be considered another intermediate step in creating the virtual matrix class. It is not needed in the in-ram version, since matrices are allocated on the heap. Instead a structure is used to store a vector allocated by calloc, and the number of references to the structure. This will be explaned in more detail in the chapter on the stack.