Well, the best way is to use the following constructor:
template<class InputIterator> string (InputIterator begin, InputIterator end);
which would lead to something like:
std::vector<char> v;
std::string str(v.begin(), v.end());
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…