在D中自定义类型覆盖.init

Mar*_*ine 8 d data-structures

我记得在某处读过可以覆盖D中自定义类型的.init属性.我想为我创建的结构执行此操作,但我找不到任何方法来执行此操作,尤其是默认情况下不允许使用构造函数.这实际上是可行的,如果是这样,我该怎么做?

rat*_*eak 10

您可以指定字段的init值(仅限编译时间变量)

struct foo{
    int a=0;
    real b = 5.0;
}
Run Code Online (Sandbox Code Playgroud)

foo.init 那将等于 foo(0,5.0)

  • 现在打败了,C++!:) (3认同)