D言語で(a == 1 && a == 2 && a == 3)をtrueにする
D言語で無かったので.
import std.stdio;
void main() {
auto a = new N();
if (a == 1 && a == 2 && a == 3) {
writeln("true");
}
}
class N {
bool opEquals(int rhs) {
return true;
}
}
opEquals
によるオーバーロードが可能なので,
何も奇をてらう必要はありませんね.
D言語のことをほとんど忘却してしまっていたので有効なDソースコードを書くのに少し時間がかかりました.