Assuming these numbers are supposed to be independent from any existing DBPro ID set, it depends what range of IDs you want to be valid.
If you only need a very small set of IDs (say 32) you can just make a static fixed-size array. If you need a large range of IDs you might consider using a std::map, or std::unordered_map so that you don't waste space for IDs that are not in use. Another alternative is a std::vector that you expand as needed, but obviously if IDs are not contiguous you could end up wasting quite a bit of space.
For initialization, you could have an initialization function that you call at the start of each command which checks if it has already been called and in that case just returns. Alternatively DBPro will check for an exported function named "Constructor" which it will call if it exists.
[b]
