今天想用分文件的形式写一个类模板,
// Stack.h :
#ifndef STACK_H
#define STACK_H
#include <iostream>
template <class T>
class Stack{
public:
Stack(int size);
~Stack();
private:
int size;
T *data;
int sp;
};
#endif // STACK_H
// Stack.cpp:
#include "Stack.h"
template <class T>
Stack::Stack(int size){
std::cout<<"Stack 构造函数!\n";
this->size = size;
data = new T[size];
sp =0;
}
template <class T>
Stack::~Stack(){
std::cout<<"Stack 析构函数!\n";
delete data;
sp =0;
size = 0;
}
// main函数:
#include <iostream>
#include "Stack.h"
int main()
{
Stack<int> st(100);
return 0;
}
但是出问题了,codeblocks一直显示如下错误:
F:\CodeBlocks\StackTest2\Stack.cpp|4|error: invalid use of template-name 'Stack' without