我有以下功能,我的问题是我无法删除 catch 中的 temp 因为它说 temp 未声明但我不明白为什么?任何帮助表示赞赏。
List_Node*List::copy(const List_Node* list)
{
if(list == nullptr)
{
return nullptr;
}
else
{
try
{
List_Node* temp = new List_Node(list -> value_);
temp -> next_ = copy(list -> next_);
return temp;
}
catch (bad_alloc& )
{
delete temp;
throw;
}
}
}