0
考慮下面的代碼片斷之前去除的功能重複呼叫:從容器功能退出
void MyFun()
{
SetMe();
// more code
if (..)
{
UnSetMe();
return;
}
// more codes
if (..)
{
UnSetMe();
return ;
}
// more code
UnSetMe();
}
正如你可以看到,該函數第一至終止呼叫SetMe(),然後之前,調用UnSetMe()。現在,在函數必須退出的每個地方添加UnSetMe()有點麻煩,並且在某些地方可能會錯誤地忽略它。
什麼是一種改進的設計來處理這種情況。