Nie wiem, dlaczego to doprowadza mnie do szału, ale tak jest. Mam zdefiniowaną funkcję i zadeklarowałem forward w main.Zewnętrzna funkcja statyczna w C++
static void myFunc(int x);
static void myFunc(int x)
{
//do stuff
}
main()
Chcę użyć myFunc (int x) w innej klasie. Więc myślę, że wszystko, co muszę zrobić, to extern static void myFunc (int x) wewnątrz nagłówka klasy, a następnie po prostu wywołać go tam, gdzie muszę w definicji klasy, ale to nie zadziała.
Co robię źle?
Dzięki
Ok, to co myślę, ale kiedy usunąć statyczne z definicji, to nadal nie zbuduje. –
Jeśli utrzymujesz deklarację jako 'static void myFunc (int);' funkcja * będzie * 'statyczna' bez względu na obecność' static' w definicji. –
Dzięki, mam to, usunąłem statyczne, a także zadeklarowałem, że jest źle w nagłówku. –