On Thursday, 16 July 2015 at 00:39:29 UTC, H. S. Teoh wrote:
On Thu, Jul 16, 2015 at 12:18:30AM +0000, seashell86 via
Digitalmars-d-learn wrote:
[...]
The reason is that class variables cannot be overridden, only
class methods can.
If you want to simulate overriding of class variables, you can
use a @property method instead:
class Animal {
@property string voice() { return "Wah!"; }
void speak() { writeln(voice); }
}
class Dog : Animal {
override @property string voice() { return "Whoof!"; }
}
T
Wow, a quick and thorough response! Thank you! I'm actually
curious as to why this feature would not be in the language? Is
it for performance reasons?