Błąd: 'float' previously declared here

Błąd: 'float' previously declared here
PolskaGra
  • Rejestracja:ponad 2 lata
  • Ostatnio:ponad rok
  • Postów:17
0

Przy kompilacji wyskakuje mi taki błąd:

Kopiuj
MainCharacter.hpp:4:7: error: redefinition of 'float MainCharX'
4 | float MainCharX;
  |       ^~~~~~~~~
MainCharacter.hpp:4:7: note: 'float MainCharX' previously declared here
4 | float MainCharX;
  |       ^~~~~~~~~
MainCharacter.hpp:5:7: error: redefinition of 'float MainCharY'
5 | float MainCharY;
  |       ^~~~~~~~~
MainCharacter.hpp:5:7: note: 'float MainCharY' previously declared here
5 | float MainCharY;
  |       ^~~~~~~~~
MainCharacter.hpp:7:7: error: redefinition of 'float MainCharVelX'
7 | float MainCharVelX;
  |       ^~~~~~~~~~~~
MainCharacter.hpp:7:7: note: 'float MainCharVelX' previously declared here
7 | float MainCharVelX;
  |       ^~~~~~~~~~~~
MainCharacter.hpp:8:7: error: redefinition of 'float MainCharVelY'
8 | float MainCharVelY;
  |       ^~~~~~~~~~~~
MainCharacter.hpp:8:7: note: 'float MainCharVelY' previously declared here
8 | float MainCharVelY;
  |       ^~~~~~~~~~~~

Niestety nie wiem jak go naprawić.
Może ktoś pomóc?

edytowany 1x, ostatnio: Riddle
B2
  • Rejestracja:około 2 lata
  • Ostatnio:6 dni
  • Postów:71
3

Definicja zmiennej globalnej w nagłówku? Zmienne globalnej powinieneś definiować w .cpp, a w .hpp dać co najwyżej extern, a najlepiej w ogóle nie używać zmiennych globalnych, na ile to możliwe.

edytowany 1x, ostatnio: Riddle
MarekR22
Moderator C/C++
  • Rejestracja:ponad 17 lat
  • Ostatnio:minuta
8

Problem pierwszy używanie zmiennych globalnych.
Problem drugi umieszczenie ich w pliku nagłówkowym.
Problem trzeci brak w nagłówku Header guard Jak działa strażnik nagłówka ifndef? (gdyby header guard był, to byłby bład linkowania, a nie kompilacji).


Jeśli chcesz pomocy, NIE pisz na priva, ale zadaj dobre pytanie na forum.
edytowany 2x, ostatnio: MarekR22
AK
  • Rejestracja:prawie 7 lat
  • Ostatnio:około miesiąc
  • Postów:3561
2

Najpierw podstawy, Gra podbijająca Polskę będzie "trochę" później

MarekR22 napisał(a):

Problem pierwszy używanie zmiennych globalnych.

Co więcej, obawiam się struktur nie zna, oddzielne zmienne na X i Y mi to sugerują.


Bo C to najlepszy język, każdy uczeń ci to powie
edytowany 1x, ostatnio: AnyKtokolwiek
CZ
  • Rejestracja:ponad 8 lat
  • Ostatnio:16 minut
  • Postów:2326
0

Nie możesz mieć dwóch zmiennych o tej samej nazwie.

enedil
całkowicie błędna diagnoza

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.