我正在定义一个使用列表类的模板类的函数。
我在这个列表类中定义了擦除函数,如果擦除成功则返回true,如果擦除失败则返回false,我在这里要做的就是调用这个函数。
但是,我需要计算列表的大小 n,并且只有在 list.erase(itr.list_iter) 调用返回 true 时才想减少它。
更简洁地说,以下代码行是否会调用 list.erase(itr.list_iter) 函数并减少 n 并仅在成功时调用 refresh() ?或者它实际上并没有删除列表中的元素?
void erase(iterator itr) {
if(list.erase(itr.list_iter)) {
--n;
refresh();
}
}
非常感谢你。