C++模板与异常处理详解
1. 二叉树遍历与输出操作符模板
在处理二叉树时,我们常常需要对其进行遍历操作。这里提供了中序遍历和后序遍历的实现:
void BTnode<valType>::
inorder(BTnode *pt, ostream &os) const
{
if (pt)
{
if (pt->_lchild) inorder(pt->_lchild, os);
display_val(pt, os);
if (pt->_rchild) inorder(pt->_rchild, os);
}
}
template <typename valType>
void BTnode<valType>::
postorder(BTnode *pt, ostream &os) const
{
if (pt){
if (pt->_lchild) postorder(pt->_lchild, os);
if (pt->_rchild) postorder(pt->_rchild, os);
display_val(pt, os);
}
}
对于二叉树类模板,为了方便输出,我们可以定义一个输出操作符模板:
template <ty
超级会员免费看
订阅专栏 解锁全文
11万+

被折叠的 条评论
为什么被折叠?



