Say I want a std:vector<T>, and say I have 1000 elements of T. The index into T has an arbitrary starting point, say 15000 to 16000 (1000 elements).
Without allocating 16000 elements, how do I create the vector<T> so that 15000 is index, 1, 15001 is index 2, etc.
I know I can do this with a Hash, but my indices are naturally integers in the range of 15000 to 16000.
I can probably also inherit my own class from Vector and overload operator [], so that 15000 is converted into 1, etc, but I am just wondering if there is a commodity version of this out there.