I have the following class:
class solveMaze {
private:
maze maze;
mouse m;
stack<coords> coordStack;
int x;
int y;
coords currLoc;
public:
solveMaze();
};
In here I get an error of undefined reference to "coords::coords()" what does this mean and how can i declare an object that i can overwrite/make it act like a variable (like x and y)?
solveMaze::solveMaze() {
x = m.x;
y = m.y;
coords c(x, y);
currLoc = c;
coords lastLoc(c);
coordStack.push(c);
}
This is the coords.h (irrelevant operator overloading functions removed to shorten code):
class coords {
public:
coords();
coords(int);
coords(int, int);
int x;
int y;
friend ostream &operator<<(ostream &output, const coords &c);
bool operator==(coords);
void operator=(const coords &b);
};
void coords::operator=(const coords &b){
x = b.x;
y = b.y;
}
coords::coords(int a, int b) {
x = a;
y = b;
}