注意,结点类的创建需要使用模板类。模板类的编译不支持分离编译。
解决办法:1,在main函数中包含类的实现源文件即.cpp文件包含进来。同时注意就不要再包含类的声明文件了即.h文件,因为在类的实现的.cpp 文件中已经包括了.h文件。
2 注意在头文件.h 文件中 写好 #ifndef ..... #define.....#endif......
运行环境:VS2015
// Node.h头文件
#ifndef _NODE_H_
#define _NODE_H_
#include <iostream>
template <class T>
class Node
{
private:
Node<T> *next;
public:
T data;
Node(const T & item, Node<T>* ptrnext = NULL);
void InsertAfter(Node<T>*p);
Node<T>* DeleteAfter(void);
Node<T>* NextNode();
Node();
~Node();
};
#endif // !_NODE_H_
// Node.cpp 文件
#include "Node.h"
template<class T>
Node<T>::Node()
{
}
template<class T>
Node<T>::~Node()
{
}
template<class T>
//构造函数初始化
Node<T>::Node(const T &