++ 11 override specifier, . override, , .
bar(int) ( bar(double):
class Base {
public:
....
virtual void bar(int) { cout << "Base::bar(int)" << endl; }
};
class Derived : public Base {
public:
...
void bar(int) const { cout << "Derived::bar(int)" << endl; }
};
bar Derived . const , - . , , .
override ', , .
class Base {
public:
....
virtual void bar(int) { cout << "Base::bar(int)" << endl; }
};
class Derived : public Base {
public:
...
void bar(int) const override { cout << "Derived::bar(int)" << endl; }
};
, - .
class Base {
public:
....
virtual void bar(int) { cout << "Base::bar(int)" << endl; }
};
class Derived : public Base {
public:
...
void bar(int) override { cout << "Derived::bar(int)" << endl; }
};
, override , , .