Jeśli w pliku Logowanie.h pozostaną zakomentowane include i namespace to wyświetlają się błędy “error: ‘fstream’ does not name a type” i “error: ‘string’ does not name a type”, gdy odkomentuję je to te linijki dobrze kompilują się(chyba) ale wydaje mi się że nagłówki z main.cpp powinny tutaj działać i nie trzeba ich powtarzać
Jeśli odkomentuję wyżej wspomniane linijki to wyświetla się dodatkowo błąd “undefined reference to `Logowanie::zalogowany’”
Używam CodeBlocks z MinGW ale podobne problemy były z Eclipse
Dobra teraz widzę, że w konstruktorze. Konstruktor wywoływany jest na rzecz danego obiektu a nie przestrzeni nazw danej klasy, więc nie możesz z poziomu takich metod dowoływać się bezpośrednio do metod statycznych lecz musisz podać też zakres z jakiego pochodzi metoda. Czyli konstruktorze metodę statyczną musisz wy wołać tak:
Logowanie::zalogowany = false;
Dopiero po napisaniu zauważyłem, że to właściwość, a nie metoda statyczna, ale dla jednych i drugi trzeba się dostać poprzez określenie przestrzeni nazw.
Dodatkowo należałoby też zainicjować zmienne statycznych (nadać im wartości - utworzyć je).