0
你好,我在修剪C++中的字符串时遇到了问题。它在 字符串的末尾添加了一些奇怪的字符。在C++中修剪字符串
string& Napis::subst(char cold, char cnew) {
string * s = new string(data);
replace(s->begin(),s->end(), cold, cnew);
return *s; // takes back string s with changed sign
}
怎么叫这个功能呢?它应该做什么?什么是'数据'?你是如何确定它在字符串的末尾添加了奇怪的字符? –
返回对刚刚分配的字符串的引用是一个坏主意 - 它使所有权非常不明确。您可能只想返回字符串,然后在本地分配一个(即不新),以便您可以按值返回。 – Flexo