[C++] Wskaźnik klasy głównej na wskaźnik klasy dziedziczącej po klasie głównej.
Ostatnio zmodyfikowano 2011-06-27 22:36
waxx Temat założony przez niniejszego użytkownika |
[C++] Wskaźnik klasy głównej na wskaźnik klasy dziedziczącej po klasie głównej. » 2011-06-27 21:16:20 Bezpieczniej jest uzywac dynamic_cast<> niz static_cast<>, bo jak sie nie uda przerzutowac wskaznika to zwroci chociaz NULL, a static_cast<> sie dziwnie zachowuje.
Takie male wtracenie, ale watek tamten juz zostal zamkniety. |
|
npHard |
» 2011-06-27 21:22:20 Dokładnie chciałem to dopisać. dynamic_cast<> przydatne jest szczególnie wtedy, kiedy masz kilka klas dziedziczących z jednej. Np. obok klasy Hero miałbyś jeszcze klasę Enemy. Wtedy rzutując Obiekt* na Hero* masz pewność, że masz do czynienia z Hero a nie z Enemy. Trochę zamotałem, static_cast używaj tylko wtedy gdy masz pewność co do rzutowania ; ) |
|
Elaine |
» 2011-06-27 22:19:33 Fajnie sobie trochę poteoretyzować, prawda? :P
Bankowo nie zdarzy się sytuacja że przez warunek przejdzie coś co wcześniej było Obiekt* a nie Hero* |
Jeśli już chcecie "bezpiecznie", to najbezpieczniej byłoby zrobić to bez żadnego rzutowania ;> |
|
DejaVu |
» 2011-06-27 22:36:51 A najlepiej to bez pisania kodu ;p |
|
« 1 » |