On Tuesday, 17 May 2016 at 16:52:01 UTC, Lucien wrote:
Why a attribute cannot be abstract ?
Because it cannot be virtual and cannot be overridden. This is
different than Python, but in line with other C-style languages
(and the lower level implementation)
Use a property function instead to achieve this.
abstract class A
{
protected @property abstract int attr(); // a getter for attr
protected @property abstract attr(int); // a setter for attr,
if desired
}
class B : A
{
override @property int attr() { return 0; } // implementation
}