Как получить тип элемента из экземпляра контейнера STL?
Я знаю о value_type, key_type ... но они работают с типами, а не с экземплярами. Я старался такие вещи, как:
std::set<uint64_t> mySet;
decltype (mySet)::value_type pos;
Но это не работает.
РЕДАКТИРОВАТЬ: я использую VS 2010.
РЕДАКТИРОВАТЬ 2: целью этого кода было получить тип, чтобы дать ему boost :: lexical_cast & lt; & gt; Есть ли обходной путь, который позволяет это? Я хочу что-то вроде этого:
mySet.insert(boost::lexical_cast<decltype(mySet)::value_type>(*it));
// it is a iterator in vector of strings
EDIT3: это работает:
mySet.insert(boost::lexical_cast<decltype(mySet)::value_type>(*it));