Absolutna racja, tylko że nie chciało mi się wymieniać wszystkich wad podanego kodu, wymiana wszystkich wad była by dłuższa niż podany kod, więc podałem najszybsze rozwiązanie. Fiołek pomyśl, patrząc na podany kod masz przepuszczenie że autor podzielił to na kod i pliki nagłówkowe?
Nie ma sensu przy każdym połączeniu trzymać miejsca odlotu i przylotu w postaci napisu, prowadzi to do sytuacji że będą miejsca: “warszawa”, “Warszawa”, “w-wa”; Najlepiej zrobić osobną tablicę z miejscami, a na liście trzymać jedynie wskaźnik na miejsca przylotu/odlotu.
W miarę możliwości w konstruktorach C++ należy używać listy inicjalizacyjnej.
Brak destruktora usuwającego Lot z listy
Pomysł na jedna jedyna listę nie jest zbyt udany, warto zrobić klasę Lista_Lotow i do niej dodawać Lot’y
a więc tak zacznijmy od tego ze klasa nie była jeszcze skończona,wystapił problem więc wrzuciłem to co wtedy miałem napisane,
chyba nie jest jakimś większym problemem napisanie funkcji która zmienia wielkość liter w słowie np. na same duże (problem typu: Waszawa,warszawa,waRSZawa więc nie istnieje)
Jeżeli nie jest to statyczny składnik to chyba nie jest błędem umieszczenie przypisań w ciele konstruktora (zamiast na liście inicjalizacyjnej)
Funkcję już dopisałem
4 Nie bardzo widzę sens tworzenia nowej klasy skoro wszystko można “załatwić” w tej.
Nie popadajmy w skrajności 2. Można prosić jakiś przykład ( pytam serio, w jakich przypadkach przypisanie wartości niestatycznemu składnikowi w ciele konstruktora może wywalić błąd, a zadziała przypisanie w liście inijaliz.) 3. Tutaj też mam wątpliwości, nie rezerwowaliśmy pamięci przez new więc dlaczego obowiązkowo musi być destruktor, w funkcji można dodać obiekt do listy - w funkcji można go również usunąć. 4 Co do funkcji,( nie wiem czy dobrze to wykombinowałem) co jeżeli będzie więcej obiektów spełniających warunek
(X.miejsce_przylotu==L.miejsce_przylotu)
w funkcji zwrócony tylko zostanie pierwszy, co z pozostałymi. . . .