就線程安全性和一般安全性而言,下列代碼是否有任何問題?返回參考傳遞參數
std::string & toHexString(const uint8_t *buf, uint32_t size, std::string &out)
{
// modify 'out'
return out;
}
#ifndef TOHEXSTR
#define TOHEXSTR(x, y,) (toHexString(x, y, std::string())).c_str()
#endif
這將是使用的方法是打印調試語句:
printf("Byte buffer contents: [%s].", TOHEXSTR(buf, buf_size));
如果這個實現的問題,應該怎麼改?
謝謝。
你考慮過Boost.Format嗎? – Fanael
提升被禁止。 – MarkP
@Fanael:對於像字符串格式化那樣簡單的事情來說,這麼大的依賴關係似乎是一個壞主意。 –