我該如何做這件事。返回分配的本地變量
char* ToString(int num) {
char* str = new char[len(num)];
//conversion
return str;
}
,並通過調用此。
string someStr = ToString(someInt);
我應該在這裏免費得到someStr
嗎?
我知道我總是需要delete
每當我使用new
。
如果我多次調用這個函數,我該如何分配內存然後讓它們不使用它呢?
爲什麼我總是得到否定的評價。我只是問 – mr5
我沒有投票,但有一點需要注意的是,目前還不清楚你在'ToString'函數中做了什麼。另外,什麼是'len(int)'? – juanchopanza
我們可以猜測 - 您使用的是char *而不是字符串,len(num)似乎很神祕,並且會泄漏內存。如果你的編譯器有一些C++ 11的支持,那麼已經有'std :: to_string'這可以正確地做到這一點。 –