How do I create a strongly types alias in D? Something like:

alias euro = uint;
alias dollar = uint;

euro toEur(dollar pd) { ... }
dollar toDollar(euro pe) { ... }
有帮助吗?

解决方案

A strongly typed alias is actually a new type, so just use a plain struct:

struct euro {
     uint amount;
}

If you want it to implicitly convert to and from uint, you can also add alias amount this;, but that weakens the typing so you might not want to.

其他提示

What you need is Typedef, which basically does what Adam suggests.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top