メンバー関数定義のコードに問題があります。
.hファイルから:
//This is a private type
struct node {
node *next;
node *prev;
T *o;
};
.cppファイルからエラーを生成するコード:
template <typename T>
void Dlist<T>::function(T *o)
{
node newV = new node;
....
}
これは構造体を宣言するための適切な構文であると思い、「ノードはこのスコープで宣言されていません」というエラーが発生しました。
それから私は試しました:
Dlist<T>::node *victim;
「newVはこのスコープで宣言されていません」というエラーが発生しました。これは、行自体が宣言であるため、さらに戸惑いました。
.hファイル内に.cppを含めています。
どんな助けでも大歓迎です。