c++描述的数据结构(很简单的问题)

来源:百度知道 编辑:UC知道 时间:2024/09/22 07:51:21
void InsertAfter(Node<T>*P);\\在当前节点之后插入指针p所指节点

Node<T> * deleteAfter(void)\\删除当前节点的后继结点的指针

Node<T> * nextnode(void)const;\\ 返回指向当前指点的后继结点的指针

我的问题是 为什么第一个函数是void 型 第二第三个函数是node<T>*型啊 我想不通 感激不尽!!!!

因为插入是把*P指向的结点添加到链表,这个操作执行完了就插进去了.不需要返回刚插入的结点的指针来做后续的操作.
而删除一个结点时,deleteAfter(void)是将当前结点的后面那个结点从链表中"摘下来",被摘下来的结点用返回值的形式返回给你.你可以拿来用,或者把它删除.如果不返回那个结点的指针的话,你想用或者想删除那个被摘下的结点是没办法访问的.
第三个就更好理解了,就是把当前结点的后继结点的指针返回给你.