Compiler-Warnungen werden häufig nicht beachtet (``Wenn es was Ernstes wäre, wäre es eine Fehlermeldung'').
Gerade in C++ sollte man jedoch Warnungen nicht mißachten:
class base { public: virtual void f() const; }; class deriv : public base { public: virtual void f(); };
Compiler:
warning: deriv::f() hides virtual base::f()
Durch das fehlende const wird nicht f der Basisklasse redefiniert, sondern ein eigenes f definiert, wodurch base::f versteckt wird.