Переопределение .init в пользовательском типе в D - PullRequest
8 голосов
/ 10 июня 2011

Я помню, что где-то читал, что можно переопределить свойство .init пользовательских типов в D. Я хотел бы сделать это для структуры, которую я создал, но я не нахожу никакого способа сделать это, тем более что конструкторы по умолчанию не допускаются. Возможно ли это на самом деле, и если да, то как я могу это сделать?

1 Ответ

10 голосов
/ 10 июня 2011

вы можете указать значения инициализации полей (только с переменными времени компиляции)

struct foo{
    int a=0;
    real b = 5.0;
}

foo.init будет тогда равно foo(0,5.0)

...