Merhaba,
Yeni bir şey öğrendim: Bu bir derleme zamanı olanağı, tıpkı enum karesiniAl = (int a) => a * a;
gibi. İşin içine AA'yi dahil ediyoruz:
alias oT = int;
enum opMap =
[ "×": (oT a, oT b) => a * b,
"÷": (oT a, oT b) => a / b,
//...
];
auto ikiyeKatlaVeBöl(int first, int second) {
const katla = opMap["×"](first, 2);
return opMap["÷"](katla, second);
}
void main()
{
assert(6.ikiyeKatlaVeBöl(3) == 4);
}
Kod yazarken, kendi sözdiziminizi tasarlayabilirsiniz. Henüz başka ne işi yarar bilmiyorum.
Kolay gelsin...