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

rain1009 2009-05-09 01:05:59
我的问题是 为什么第一个函数是void 型 第二第三个函数定义成是node<T>* 型啊 我想不通 感激不尽!!!!

void InsertAfter(Node<T>*P);\\在当前节点之后插入指针p所指节点

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

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

...全文
74 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
ZPZ07117007 2009-05-09
  • 打赏
  • 举报
回复
返回的类型是节点指针函数
plvorg 2009-05-09
  • 打赏
  • 举报
回复
定义成什么都可以,写程序的时候就要看需要了,有的函数你需要利用他的返回值,就不能用void 了,反之,如果不用返回值的话,就可以用void
你说的后两个函数返回的是结点指针,有时候会需要这个返回值,于是便是node <T>* 型了
liliangbao 2009-05-09
  • 打赏
  • 举报
回复
void InsertAfter(Node <T>*P);\\最好是返回bool表示是否插入成功

Node <T> * deleteAfter(void)\\最好是返回bool表示是否删除成功

Node <T> * nextnode(void)const;\\ 返回指向当前指点的后继结点的指针,这样可以通过返回值将后序节点返回~
pengzhixi 2009-05-09
  • 打赏
  • 举报
回复
[Quote=引用楼主 rain1009 的帖子:]
我的问题是 为什么第一个函数是void 型 第二第三个函数定义成是node <T>* 型啊 我想不通 感激不尽!!!!

void InsertAfter(Node <T>*P);\\在当前节点之后插入指针p所指节点

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

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

看你要返回什么?比如你删除一个接点后可能想返回被删除接点后面那个接点的指针.那么返回类型就是node <T>*
如果不需要返回什么就是void
lingyin55 2009-05-09
  • 打赏
  • 举报
回复
为什么第一个函数是void 型 第二第三个函数定义成是node <T>* 型啊 我想不通 感激不尽!!!!

不大明白你的意思啊,在当前节点插入新节点后一定要返回什么吗?如果程序不需要,就直接定义成void,很正常啊。
需不需要返回值是根据程序的需要。

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧