Witam serdecznie,
z racji tego, że mamy wakacje, postanowiłem ostro wziąć się za programowanie obiektowe.
Naskrobałem z trudem grę Snake korzystając z SFML, działa w miarę przyzwoicie, natomiast mam pewien problem:
do gry postanowiłem dodać klasę Textbox, która za zadanie ma wyświetlać ilość punktów po zjedzeniu jabłka, informację o przegranej itd.
Klasę tę już zaimplementowałem, jednak mam problem z jej wykorzystaniem. Podpiąłem ją do do pliku Snake.h i tu zaczynają się schody.
W definicji klasy 'Snake' deklaruję obiekt typu 'Textbox'.
Snake: metoda Reset() <- tutaj wyświetlam końcową ilość punktów i informację o przegranej.
Ale żeby wyświetlić ilość punktów, które zapisane są w obiekcie typu Snake, zmienna na punkty musi być... publiczna (inaczej obiekty typu 'Textbox' nie może jej użyć).
Co zrobić? Zaprzyjaźnić klasy, czy jest inny sposób? Przyjaźni staram się unikać bo wydaje mi się to obejściem idei OOP i pójściem na tzw. skróty.. (oczywiście przyjaźń jest niezbędna, chodzi mi o to, w jaki sposób ja chcę ją wykorzystywać :))
Może ktoś zna jakąś lekturę lub kurs gdzie łączenie klas i ich wspólne działanie zostały dobrze opisane? Muszę przyznać że mam z tym niemałe problemy :)
Pozdrawiam!