看不懂书上的中序遍历

napoleonpan3 2004-01-18 09:03:21
template <class Entry>

void Binary_tree<Entry>::recursive_inorder(Binary_node<Entry>
*sub_root, void (*visit)
(Entry &))
//参数中的(*visit)(Entry &)是什么意思?要我们带入什么
{
if (sub_root != NUll)
{
recursive_inorder(sub_root->left,visit);
(*visit)(sub_root->data);
//这个地方我看不明白,我只大概理解是读入根的值,但是前面的(*visit)是什么意思?
recursive_inorder(sub_root->right,visit);
}
}
...全文
40 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
WYlslrt 2004-01-24
  • 打赏
  • 举报
回复
晕菜,干吗呢,打架呢?~~~~~~~~~~~~~~~~~~~~~~
xiaha3 2004-01-24
  • 打赏
  • 举报
回复
实际上这样的打架是一件有意义的事情

支持打架
SimonSui 2004-01-20
  • 打赏
  • 举报
回复
别打了,可以结贴了
szwpc 2004-01-20
  • 打赏
  • 举报
回复
呵呵,真有意思。这个也能说上一通。
morris 2004-01-19
  • 打赏
  • 举报
回复
其实不必拘泥语言细节
xxxno 2004-01-19
  • 打赏
  • 举报
回复
呵,我只是讲的清楚一点不必这样吧
自认为我说的比较清楚,:)
gnefuil 2004-01-19
  • 打赏
  • 举报
回复
我后面不是说了visit是函数指针了么?
xxxno 2004-01-19
  • 打赏
  • 举报
回复
1、未指明为何是一函数指针;
2、楼主问的是(*visit)什么意思,你说是函数,如果他能明白为什么是函数就不用问了!
xxxno 2004-01-19
  • 打赏
  • 举报
回复
所以我怕误人子弟,呵呵
xxxno 2004-01-19
  • 打赏
  • 举报
回复
你说的不明白
gnefuil 2004-01-19
  • 打赏
  • 举报
回复
楼上为什么要重复我说的内容啊。。。
xxxno 2004-01-19
  • 打赏
  • 举报
回复
void (*visit)(Entry &)就是一个函数指针(返回任意类型指针的函数指针)
在这里主要用于给每个被访问的值打上“已访问”的标记
至于(*visit)(sub_root->data) 实际上就是函数调用了
visit是个函数指针,(*visit)就是进行函数调用,后面括号当然就是参数了
这回明白了吧!
gnefuil 2004-01-18
  • 打赏
  • 举报
回复
void (*visit)(Entry &)是一个函数
在Binary_tree函数中,把这个函数的指针作为参数传进来
然后用这个函数对sub_root->data进行处理
visit是一个函数的指针
明白了么?

33,029

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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