基本上我想做的就是使用stack-array.cpp中的数组定义泛型堆栈,并在stack-test.cpp中使用它。
我已经阅读了几个答案here和here,但不知怎的,我还是无法在stack-test.cpp中创建一个stackarray。我是一名C ++初学者,我害怕我的智慧结束了。
以下是代码:
堆叠array.h
template<typename T>
class stackarray {
public:
int stacksize;
T stacks;
T *sp;
T pop();
void push(T);
int isempty();
stackarray<T>();
virtual ~stackarray<T>();
};
堆叠array.cpp
#include "stack-array.h"
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
template<typename T>
stackarray<T>::stackarray()
{
stackarray<T>::stacksize =10;
stackarray<T>::stacks = new T[stacksize];
stackarray<T>::sp = stacks;
}
template<typename T>
stackarray<T>::~stackarray()
{
// TODO Auto-generated destructor stub
}
template<typename T>
void push(T n)
{
// TODO Auto-generated destructor stub
}
template<typename T>
T pop()
{
// TODO Auto-generated destructor stub
}
template<typename T>
int isempty()
{
// TODO Auto-generated destructor stub
}
template<typename T>
T applyToAll() {
// TODO Auto-generated destructor stub
}
堆叠TEST.CPP
# include <iostream>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
# include "stack-array.h"
int main() {
stackarray<int> x; //erroring here
return 0;
}
这给了我几个&#34;未定义的对stackarray :: stackarray()的引用&#34;