从这里实例化

Instantiated from here

本文关键字:实例化 这里      更新时间:2023-10-16

我有一个问题"从这里实例化"。

template <typename E>
class tree
{
public:
    tree(){root=0;}
    void addAVL( const E &data) throw(bad_alloc);
private:
    class Node
    {
    public:
        E data;             
        Noeud * left;       
        Noeud * right;      
        int high;       
        std::string adHier; 
        Noeud( const E&d ): data( d right( 0 ),left( 0 ),high(0), adHier("") { }
    };
    Node * root;
};
#include "AVL.inl"
/*-------------------------
*in my inl
*/
template <typename E>
void tree<E>::addAVL( const E &data) throw(bad_alloc)
{
    // if the trre is empty
    if ( root == 0 )
    {
        root = new Node(data);  // HERE my error when in a cpp I call addAVL
    }
}
我的错误是:
../AVL.inl:98:   instantiated from ‘void AVL_Lab10::tree<E>::addAVL(const E&) [with E = int]’
../TestingAVL.cpp:30:   instantiated from here
Noeud * left;
Noeud * right;
Noeud( const E&d ): ...

我猜应该是Node而不是Noeud ?如果你改正了这些错别字,它能纠正你的错误吗?

最后我没有找到问题,但我可以构建…我的老师告诉我,他在eclipse中的GCC编译器也有同样的问题。这很奇怪,因为每次我在我的。inl中添加一些代码并保存。错误图标显示....

谢谢你的帮助!: D