2 responses to “Polimorfizm w Destruktorze, czyli jak nie działa virtual”

  1. nietaki

    Nie jestem w żadnym wypadku ekspertem w tej dziedzinie, a dokładniej dopiero się wdrażam w C++, ale w (podobno świetnej i jestem w stanie się z tym zgodzić) książce Mayersa “Effective C++” jest nawet rozdział o tytule “Never call virtual functions during construction or destruction”. Jest w nim wytłumaczone (nie będę przytaczał, opowiadanie tego we własnych słowach nie oddałoby sensu oryginału) dlaczego działa to tak jak działa, dlaczego nie należy w konstruktorach/destruktorach wywoływać metod wirtualnych (ani żadnych, które wywołują funkcje wirtualne(!), jak w powyższym hacku) i, co najważniejsze, jak warto do tego podchodzić.

    Polecam i pozdrawiam!

Leave a Reply