[C++] Problem z funkcjami wirtualnymi, polimorfizmem
Ostatnio zmodyfikowano 2014-12-07 14:48
akcza Temat założony przez niniejszego użytkownika |
[C++] Problem z funkcjami wirtualnymi, polimorfizmem » 2014-12-07 13:58:50 Witam, kod: class Shape { public: virtual void shift( float x, float y ) = 0; virtual bool isColliding( Shape * shape ); };
class Circle : public Shape { public: bool isColliding( Circle * circle ); };
Shape * shape = new Circle( - 2, 0, 5 ); Circle * circle = new Circle( 5, 0, 5 ); shape->isColliding( circle );
Co zrobić aby ostatni linijka była wykonywana dla funkcji isCollding z klasy Circle? |
|
Monika90 |
» 2014-12-07 14:30:38
virtual bool isColliding( Shape * shape );
bool isColliding( Circle * circle );
|
Typ argumentów się nie zgadza, musi być ten sam. |
|
akcza Temat założony przez niniejszego użytkownika |
» 2014-12-07 14:48:34 Tak, też do tego doszedłem. Myślałem, że w magiczny sposób zadziała tutaj jakaś niejawna konwersja połączona z właściwościami funkcji wirtualnych i dziedziczenia.
Dzięki Monia! |
|
« 1 » |