{C++} Error- 'xxx' does not name a type

0

Witam!
Mam problem. Długo szukałem w Google i nie mogłem znaleźć problemu podobnego do mojego. A mianowice mam dwa pliki: funkcje.hpp oraz zmienne.hpp. Oto one:

funkcje.hpp

#ifndef funkcje_hpp
#define funkcje_hpp
namespace klasa
{
	//Klasa 'Cpostac' do ulatwienia wyswietlania grafiki
	class Cpostac
	{
		public:
			int x, y;
			int s, w;
			int kierunek, klatka;
	};
}
//Funkcje kolizji
void kolizja_rzymianin(int wys,int szer);
void kolizja_rycerz(int wys, int szer);
bool kolizja_walka(int x1, int y1, int s1, int w1, int x2, int y2, int s2, int w2);
#endif 

zmienne.hpp

 #ifndef zmienne_hpp
#define zmienne_hpp
#include "funkcje.hpp"
using namespace klasa;
//Zmienne dotyczące postaci
Cpostac rzymianin;
Cpostac rycerz;
//Zmienne okreslajace pozycje postaci oraz zmienna 'frame' ulatwiajaca wyswietlanie animacji
Cpostac atak_rzym;
Cpostac atak_ryc;
atak_rzym.x = 800;
atak_rzym.y = 100;
atak_rzym.kierunek = 0;
atak_rzym.klatka = 0;
atak_rzym.s = 170;
atak_rzym.w = 250;
rzymianin.x = 800;
rzymianin.y = 100;
rzymianin.kierunek = 0;
rzymianin.klatka = 0;
atak_ryc.x = 100;
atak_ryc.y = 60;
atak_ryc.kierunek = 0;
atak_ryc.klatka = 0;
atak_ryc.s = 211;
atak_ryc.w = 250;
rycerz.x = 100;
rycerz.y = 60;
rycerz.klatka = 0;
rycerz.kierunek = 0;
#endif

I teraz najważniejsze. Po kompilacji dostaje 22 tego typu błędy różniące się tylko nazwą zmiennej:
*[Error] 'atak_rzym' does not name a type *

Wie ktoś dlaczego? Szukałem w Internecie rozwiązań (stąd ta przestrzeń nazw) i nic nie pomagało. Mógłby ktoś mi jakoś pomóc? Z góry dziękuję :)

0

Nie możesz nadawać zmiennym/polom klasy w ten sposób wartości...

1
class Cpostac
  {
   public:
   int x, y,s,w,kierunek,klatka;
   Cpostac(int x,int  y,int kierunek,int klatka,int s,int w):x(x),y(y),s(s),w(w),kierunek(0),klatka(0) {}
  };

Cpostac atak_rzym(800,100,170,250);

1 użytkowników online, w tym zalogowanych: 0, gości: 1