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
}

Reply via email to