Wpis z mikrobloga

Mirki mam taką funkcję. http://pastebin.com/5nNfdd4e
Dodaje ona gracza ale najpierw sprawdza czy login jest zajęty. Tylko nie działa ona tak jak chcę.
Podczas debagowania jeśli podany login już istnieje to ładnie wskakuje do if'a ale po wyświetleniu "Wybrany login jest zajęty" zawsze od razu przeskakuje do ostatniej linii czyli return true. Dlaczego tak się dzieje i nie chce wykonać return false.
#programowanie #cpp #naukaprogramowania
  • 16
  • Odpowiedz
@allocer: to tylko błąd przy wklejaniu. U siebie mam to poprawione i działa tak jak opisałem. Sleepy jak to sleepy, żeby wstrzymać wyświetlany tekst.
  • Odpowiedz
@Minemaniak1 @allocer zauważyłem coś jeszcze i mam jeszcze większy mindfuck.
W mainie wygląda to to tak if(add_player(player_vector)) {...} teraz przy debagowaniu na liście zmiennych widzę, że add_player zwraca dobrze true/false w zależności od tego jaki login podam. Tylko ten if z maina zawsze wpuszcza do środka bez różnicy czy add_player() zwróci true/false. Jakieś rozwiązania?
  • Odpowiedz
@chiken: A dobra bo to c++, to nie ma znaczenia. Daj świeży kod. Zaraz, jaki if z maina? add_player to cała ta funkcja, którą podałeś. Nie ma tu żadnego maina.
  • Odpowiedz
@chiken:
Nie mam pojęcia po co ale masz 2 razy getline dla standardowego strumienia:
http://ideone.com/zv6M2D
Usuń 1 (jak w kodzie) i będzie działać, generalnie w przypadku używania getline trzeba sie coś bawić z czyszczeniem strumienia, ale w cpp pisałem chyba z pięć lat temu ;)
  • Odpowiedz