I have the following problem already longer time. The point ist that I have read a bit on stackoverflow and I have used a typedef, but I doesnt help me.
Looking forward to get some help :)
Align_vector.h :
#include <utils/vector_2d.h>
class Vector_2d;
namespace Utils {
class Align_vector : public Vector_2d {
protected:
    bool check_range(int x, int y);
public:
    typedef enum {left, right, up, down} Alignment;
    Align_vector(Alignment alignment);
    void set_alignment(Alignment alignment);
    Alignment get_alignment();
};
} /* namespace Utils */
Align_vector.cc :
#include <utils/align_vector.h>
namespace Utils {
Align_vector::Align_vector(Alignment alignment) {
    this->alignment = alignment;
}
void set_alignment(Alignment alignment) {
    Align_vector::alignment = alignment;
}
Alignment get_alignment() {
    return Align_vector::alignment ;
}
bool check_range(int x, int y) {
    switch ( Align_vector::alignment ) {
        case Align_vector::left:
            if (x == -1 && y == 0) {
                return true;
            } else {
                return false;
            }
            break;
        case Align_vector::right:
            if (x == 1 && y == 0) {
                return true;
            } else {
                return false;
            }
            break;
        case Align_vector::down:
            if (x == 0 && y == -1) {
                return true;
            } else {
                return false;
            }
            break;
        case Align_vector::up:
            if (x == 0 && y == 1) {
                return true;
            } else {
                return false;
            }
            break;
        default:
            return false;
            break;
    }
}
} /* namespace Utils */
Here is the error:
/utils/align_vector.cc:14:47: error: no matching function for call to ‘Utils::Vector_2d::Vector_2d()’ Align_vector::Align_vector(Alignment alignment) {
 
    