I'm writing an assembler for a class, and I need to represent the symbol table and some other tables somehow. Right now I'm leaning towards writing classes for all the dependent values (e.g. SymbolEntries) and then just do an STL map <key, SymbolEntries>. Is there a better solution for this in C++?