首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

求解决办法

2012-03-17 
求解决方法template typenameTclassBinarySearchTree{public://...private:structBinaryNode{TelementB

求解决方法
template <typename   T>
class   BinarySearchTree
{
public:
                  //...
                  private:
struct   BinaryNode
{
T   element;
BinaryNode   *left;
BinaryNode   *right;

BinaryNode(const   T   &the_element,BinaryNode   *lt,BinaryNode   *rt)
:   element(the_element),   left(lt),   right(rt){   }
};
                                    //...
                                    BinaryNode   *FindMin(BinaryNode   *t)   const;
};

template <typename   T>
BinaryNode   *BinarySearchTree <T> ::FindMin(BinaryNode   *t)   const
{
if(   t==NULL   )
{
return   NULL;
}
if(   t-> left==NULL   )
{
return   t;
}
return   FindMin(t-> left);
}

问题:给出了这些错误信息

error   C2143:   syntax   error   :   missing   '; '   before   '* '

\exercise\binarysearchtree\binarysearchtree\binarysearchtree.h(191)   :   error   C4430:   missing   type   specifier   -   int   assumed.   Note:   C++   does   not   support   default-int

\exercise\binarysearchtree\binarysearchtree\binarysearchtree.h(191)   :   error   C2065:   'T '   :   undeclared   identifier

[解决办法]
template <typename T>
BinaryNode *BinarySearchTree <T> ::FindMin(BinaryNode *t) const
{
====>
template <typename T>
typename BinarySearchTree <T> ::BinaryNode* BinarySearchTree <T> ::FindMin(typename BinarySearchTree <T> ::BinaryNode* t) const
{

热点排行