gpt4 book ai didi

c++ - C++问题中的基本继承

转载 作者:搜寻专家 更新时间:2023-10-31 00:30:08 24 4
gpt4 key购买 nike

我不断收到错误消息“expected class-name before ‘{’ token {”

我尝试了多种不同的方法,但都没有奏效。如果有人可以帮助我,我将不胜感激。我的 LinkedList.h 文件

#ifndef LINKEDLIST_H
#define LINLEDLIST_H


#include <iostream>
#include "Node.h"

using namespace std;

template <class T>
class LinkedList: public Node
{

private:
Node<T>* head;
Node<T>* current;
Node<T>* tail;

public:
LinkedList(){
}

virtual ~LinkedList(){
}
};

#endif

和我的 Node.h 文件

#ifndef NODE_H
#define NODE_H

#include <iostream>

using namespace std;

template <class T>
class Node{

private:
T data;
Node<T>* pNext;

public:
Node(){
pNext = NULL;
}

~Node(){
delete this->pNext;
}
};

#endif

最佳答案

Node是模板,不是类型。 Node<T>是一种类型。使用

template <class T>
class LinkedList: public Node<T>
{
...
};

附言

作为设计选择,继承LinkedList<T>没有意义来自 Node<T> .您应该能够实现 LinkedList<T>只有:

template <class T>
class LinkedList
{
private:
Node<T>* head;
Node<T>* current;
Node<T>* tail;
};

关于c++ - C++问题中的基本继承,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38173639/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com