このコードがあるとしましょう。
int* Func(std::vector<int> integers)
{
for (int i : integers)
{
if (something)
{
return &i;
}
}
return nullptr;
}
int* x = Func({3, 4, 5, 6, 7});
delete(x); ???
「x」(nullptr でない場合) を削除する必要がありますか? 私の知る限り、演算子「new」で割り当てられたメモリのみを解放する必要があります。これは確かにここでは当てはまりません。