如何在D中创建强类型别名?

时间:2014-04-09 14:09:02

标签: types d

如何在D中创建强类型别名?类似的东西:

alias euro = uint;
alias dollar = uint;

euro toEur(dollar pd) { ... }
dollar toDollar(euro pe) { ... }

2 个答案:

答案 0 :(得分:3)

强类型别名实际上是一种新类型,因此只需使用普通结构:

struct euro {
     uint amount;
}

如果您希望它隐式转换为uint和从uint转换,您还可以添加alias amount this;,但这会削弱输入,因此您可能不希望这样做。

答案 1 :(得分:3)

你需要的是Typedef,这基本上与亚当建议的一致。