我有std :: string指针,我喜欢将其值复制到普通的std :: string 我找不到快速而快速的方法来做到这一点。 我有这个:
int main ()
{
std::string * pStr = new std::string("hello")
std::string strNew = pStr->??? // how to convert ?
return 0;
}
答案 0 :(得分:5)
解除引用:
std::string strNew = *pStr;
答案 1 :(得分:3)
两种方式:
std::string strNew = pStr->c_str(); // Be careful of `\0` with in the string
或
std::string strNew = *pStr;
第二个更好,因为C风格的字符串不能正确表示std :: string。它首先结束一个字符串\0
并忽略尾随。