RB>Можно ли использовать в качестве ключа для STL Map <key, ...> объект какого либо своего класса? Не возникнет ли проблемы с генерацией Хэш-таблицы ключей и поиском элемента?
Можно.
std::map -- это двоичное сбалансированное дерево, а не хэш-таблица, так что никаких проблем с "генерацией хэшей" не будет.
Надо только обеспечить сравнимость экземпляров класса: либо определить для них opereator<, либо сделать собственную функцию сравнения и скармливать её в std::map.
А вообще -- читай мануалы, они рулез