cout źle pokazuje wartość stałych po ponownej kompilacji!!! Czyżby błąd VS 2013?!?

0

Cześć,
Bawię się z SFML-em i co chwila mam jakieś dziwne przygody. Tym razem wygląda na to, że to nie wina SFML-a ale... no właśnie czego?

Wszystko zaczęło się, gdy postanowiłem trochę pobawić się z wielkością kafelków w grze, którą piszę. Zamiast dać rozmiar kafelka taki jaki jest w rzeczywistości (w oryginale) postanowiłem trochę zmniejszyć kafelki co miało spowodować, że kafelki powinny na siebie nachodzić. Po co tak? Bo mi się nudziło :P - chciałem tylko coś sprawdzić, ale to nie istotne.

Wracając do problemu:
Mam w kodzie (klasa Tile) takie dwie linijki kodu:

		static const unsigned height = 15;	//wysokość kafelka w pixelach
		static const unsigned width = 15;	//szerokość kafelka w pixielach

Następnie w pewnej funkcji robię coś takiego:

cout << "Tile::width: " << Tile::width << " Tile::height " << Tile::height << endl;

Po odpaleniu programu powiedzmy, że wszystko jest ok.
Następnie wychodzę z gry -> zmieniam wielkość height i width w kodzie -> kompiluję -> odpalam i... LIPA! rozmiar się nie zmienił O_o. Jest taki sam jak przed zmianą i ponowną kompilacją.
Pobawiłem się jeszcze trochę i okazuje się, że czasami zmiana zachodzi a czasami nie...
Myślałem, że to "jakoś" siedzi w pamięci, ale wyłączyłem komputer -> włączyłem go z powrotem -> odpalam grę i... znowu lipa -> pokazuje złe liczby (nie takie jak są w kodzie!).

Czasami mi to zaskakuje a czasami nie...

Mam więc pytanie czym to może być spowodowane i jak to ew. naprawić?
Czy mieliście coś podobnego?
Z góry dzięki za pomoc.

2

Rebuild All.

0

Hehe Działa! ;-)
Dzięki!

0

a mnie niepokoi to static na początku, jeśli masz to w pliku nagłówkowym to mogą się dziać rożne dziwne rzeczy.

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