Witam,
Tworzę projekt z C++ "wyspa wilków". Stworzyłem klasę abstrakcyjną Zwierze oraz klasy pochodne Krolik oraz Wilk. W programie mam również klasy Lista i Wyspa. W klasie listy mam taki fragment kodu:
void Lista::DodajNaKoniec(const Zwierze &z)
{
Zwierze * aktualne = ostatnie;
Zwierze * nowe = z.nowe_kopia();
Problem polega na tym że w momencie wywołania funkcji nowe_kopia() kompilator wyrzuca mi błąd o treści:
error C2662: 'Zwierze::nowe' : cannot convert 'this' pointer from 'const Zwierze' to 'Zwierze &'
1> Conversion loses qualifiers
Jak tego typu rozwiązać najlepiej... do referencji tej mógłbyc przypisany obiekt typu Krolik lub Wilk zachodzi wiec konwersja standardowa... czy w tym miejscu mam zrobić jakąś konwersje jawną?
Z góry dziękuje za jakiekolwiek sugestie i pomoc!