2016-11-13から1日間の記事一覧

D言語でclass同士のopEqualsをオーバーロードする

D言語のclass同士の等価比較演算子のオーバーロードは少々特殊です。 structだと struct S { int x; bool opEquals(S s) { return x == s.x; } } と書けますがclassの場合だと class C { int x; override bool opEquals(Object o) { auto c = cast(C)o; if (…