我刚刚碰到了如下代码,这对我来说看起来很可疑(为了保护无辜者而省略了细节):
std::string MakeString()
{
char buf[12] = { 0 };
return &buf[0];
}
这是好的还是不安全的?是否保证在 buf 超出范围之前创建 std::string ?
我刚刚碰到了如下代码,这对我来说看起来很可疑(为了保护无辜者而省略了细节):
std::string MakeString()
{
char buf[12] = { 0 };
return &buf[0];
}
这是好的还是不安全的?是否保证在 buf 超出范围之前创建 std::string ?