Basically all I want to do is define a generic stack using arrays in stack-array.cpp, and use it in stack-test.cpp.
I've read a few answers here and here but somehow i'm still unable to create a stackarray in stack-test.cpp. I'm a C++ beginner and I'm afraid I'm at my wits end..
Here is the code:
stack-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>();
};
stack-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
}
stack-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;
}
this gives me several "undefined references to stackarray :: stackarray()"