从以下内容中可以得知,将basic_string<unsigned char>
转换为basic_string<char>
(即std::string
)是一种有效的操作。但我无法弄清楚如何做到这一点。
例如,哪些函数可以执行以下转换,填充这些假想stou
和utos
函数的功能?
我能将unsigned char转换为char,反之亦然吗?
typedef basic_string<unsigned char> u_string;
int main() {
string s = "dog";
u_string u = stou(s);
string t = utos(u);
}
我曾尝试使用reinterpret_cast
、static_cast
和一些其他的转换方式,但是我对它们的预期功能了解有限。
s
到t
的转换过程中保留[A-Za-z0-9]
字符的方法。 - Chris Redfordustring u(s.begin(), s.end());
- Pete Becker