關(guān)于m_pList->next的兩個(gè)問(wèn)題
1.m_pList是一個(gè)Node*對(duì)象,next也是一個(gè)Node*對(duì)象,為什么考研m_pList->next?
2.在構(gòu)造函數(shù)里面已經(jīng)m_pList->next = NULL;那么在ClearList里面Node *currentNode = m_pList->next;之后,currentNode不是就永遠(yuǎn)都是NULL了嗎,又怎么進(jìn)入while循環(huán)額?
2016-10-15
m_pList是一個(gè)Node*對(duì)象,這是對(duì)的。next只是一個(gè)數(shù)據(jù)成員,next只是一個(gè)指向Node類型的指針,指向下一個(gè)結(jié)點(diǎn)
“在構(gòu)造函數(shù)里面已經(jīng)m_pList->next = NULL”這是初始化的時(shí)候,并沒(méi)有插入任何元素,當(dāng)然應(yīng)該置為空。插入元素之后,就不會(huì)再為空了。
2016-11-24
構(gòu)造函數(shù)設(shè)置的就是一個(gè)空鏈表,鏈表中沒(méi)有任何結(jié)點(diǎn)。所以此時(shí)執(zhí)行完構(gòu)造函數(shù)立馬執(zhí)行ClearList()語(yǔ)法上沒(méi)有錯(cuò)誤,但是沒(méi)有任何意義,屬于多此一舉。一般情況下,實(shí)例化對(duì)象后,應(yīng)該會(huì)執(zhí)行插入和刪除的操作,此時(shí)鏈表若:(1)不為空,則m_pList->next!=NULL,就可以順藤摸瓜依次刪除掉鏈表中每一個(gè)結(jié)點(diǎn),(2)為空,此時(shí)也沒(méi)必要進(jìn)入到while循環(huán)了。
2016-10-17
初始化時(shí)候鏈表中只有一個(gè)節(jié)點(diǎn),即是頭結(jié)點(diǎn)也是尾節(jié)點(diǎn),所以next=NULL;當(dāng)有多個(gè)節(jié)點(diǎn)時(shí)頭結(jié)點(diǎn)的指針域指向下一個(gè)節(jié)點(diǎn)的數(shù)據(jù)域,不在是NULL啦!只有頭節(jié)點(diǎn)時(shí)候ClearList()函數(shù)不起作用!
所以同意二樓觀點(diǎn)!
2016-09-29
描述問(wèn)題要清楚。。。
不知從何答起。。。o(╯□╰)o