-
判断 pos<0; 直接返回假
-
判断list.length<=0 返回假
判断 length==1 只有一个元素
最后一个元素时
- --list.length;
- 返回真
当 length>1 有长度为length个元素
删除 第pos的元素
删除过程
删除元素成功
bool ListDelete(Sqlist& list, int pos) noexcept(true){
bool ret = false;
size_t& length = list.length;
ElemType*& e = list.elems;
if (pos < 0) {
return ret;
}
if (pos >= length-1) {
--length;
ret = true;
return ret;
}
for (size_t i = pos; i < length; i++) {
e[i] = e[i + 1];
}
--length;
ret = true;
return ret;
}