C++ 模板二叉搜索树
由于某种原因,我的编译器在编译时在“delete subtree”行中出现sigabrt错误。我做错什么了吗C++ 模板二叉搜索树,c++,binary-search-tree,C++,Binary Search Tree,由于某种原因,我的编译器在编译时在“delete subtree”行中出现sigabrt错误。我做错什么了吗 template <typename T> void BST<T>::clear(BTNode *subtree) { if (subtree != nullptr) { clear(subtree->m_Left); clear(subtree->m_Right); delete sub
template <typename T>
void BST<T>::clear(BTNode *subtree)
{
if (subtree != nullptr)
{
clear(subtree->m_Left);
clear(subtree->m_Right);
delete subtree;
}
}
模板
void BST::clear(BTNode*子树)
{
if(子树!=nullptr)
{
清除(子树->左m_);
清除(子树->右侧);
删除子树;
}
}
您确定您的结束页是nullptr
s,还是在有效节点上调用它?否则,函数似乎正常。BTNode析构函数做什么?您在代码中是否使用了assert
语句?