我知道 value_type、key_type ......但它们对类型而不是实例进行操作。我尝试了类似的东西:
std::set<uint64_t> mySet;
decltype (mySet)::value_type pos;
但它不起作用。
编辑:我使用 VS 2010。
EDIT2:这段代码的目的是获得一种类型,将其赋予 boost::lexical_cast<> 是否有一种解决方法可以实现这一点?我想要这样的东西:
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));