0

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;
}
nanjero
  • 13
  • 2

0 Answers0