Nierozwiązany zewnętrzny symbol na statycznych członkach klasy
Bardzo prosto:
Mam klasę składającą się głównie ze statycznych członków publicznych, więc mogę grupować podobne funkcje razem, które nadal muszą być wywoływane z innych klas / funkcji.
W każdym razie zdefiniowałem dwie statyczne zmienne typu unsigned char w moim zasięgu publicznym klasy, gdy próbuję zmodyfikować te wartości w konstruktorze tej samej klasy, otrzymuję błąd „nierozwiązany symbol zewnętrzny” podczas kompilacji.
class test
{
public:
static unsigned char X;
static unsigned char Y;
...
test();
};
test::test()
{
X = 1;
Y = 2;
}
Jestem nowym użytkownikiem C ++, więc nie przejmuj się. Dlaczego nie mogę tego zrobić?