method returning child, doesn't overrides declared method returning parent
Andrei Alexandrescu
SeeWebsiteForEmail at erdani.org
Tue Aug 30 05:26:17 PDT 2011
On 08/30/2011 07:13 AM, Timon Gehr wrote:
> If there already is an implementation, it overrides it, otherwise it
> implements it.
That's pretty much it. The entire purpose of the "override" keyword is
to prevent silent bugs of two kinds:
(a) User thinks she hooks a specific method but instead introduces a new
one.
(b) User thinks she introduces a new method but instead hooks one.
Override helps only in cases where otherwise a silent error would occur.
If the compiler issues an error message without the help of override,
override is unneeded and illegal. This is the case with interface and
abstract methods - "override" is emphatically unneeded because the
compiler/linker wouldn't allow the code anyway.
Andrei
More information about the Digitalmars-d
mailing list