為什么要把m_pList[i]拷貝給*e?
bool?List::ListDelete(int?i,int?*e){???? if(i<0||i>=m_iLength){???????? return?false;???? }??????? ?*e?=?m_pList[i];???????? ?for(int?k=i+1;k<m_iLength;k++){????? ????m_pList[k-1]?=?m_pList[k];???? ???}???? ???m_iLength--;???? ???return?true; } 在刪除函數ListDelete()中代碼*e?=?m_pList[i];有什么作用,沒有看到用到*e啊。為什么要把m_pList[i]中的內容拷貝出來呢?
2018-12-14
嚴格來講是沒有用的,之所以這樣寫是為了在測試的時候,看一下我們刪除的對不對,通過*e就可以看出來
2020-02-11
老師是為了讓我們對過程更加清晰,并且與前面的插入對應,先完成取出來的動作。但是實際上可以不需要*e,因為你本來就是要把它刪除,所以直接將前面元素左移,直接覆蓋也是可以的。
2018-12-14
你把形參里面的*e去掉,再把
?
*e?=?m_pList[i];去掉,對刪除函數沒有本質的影響