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?

Reply via email to