例如,指针指向的字符串具有以下格式
msg->data.c_str()
现在,我想将此字符串存储到“本地”字符串中,例如:
string str = msg->data.c_str();
然而,这不起作用,我对指针操作并不熟悉。有人可以帮忙吗?
答案 0 :(得分:4)
只是做:
string str = msg->data;
这将使用std::string
字符串作为参数调用msg->data
复制构造函数。结果是msg->data
被安全地复制到str
。是否立即复制实际内容,或者是否是写入时复制是由实现决定的。你不需要担心,它会“正常工作”。
答案 1 :(得分:1)
.c_str()
允许从字符串中获取const char*
。如果您对该字符串感兴趣,请删除c_str()
。