2004-08-26から1日間の記事一覧

IFROAble あらため IMath

やはり、すでに人様の日記*1のコメントで書いているのですが、 interface IMath where T : IComparable, IFormattable, IConvertible, IComparable { T Add(left T, right T); } などとしたとき、プリミティブ数値型はすべて上記インターフェスを実装してい…

interface X を明示的実装した構造体を T where X で受け取ったときのメソッド呼び出しがどうなるか?

昔(id:ladybug:20040812)書きましたが、暗黙的実装を行った構造体が特殊化されたインスタンス化によってインライン展開&最適化されることは、仕様でも実装でもわかっています。int Add(int, int) なんてメソッドを int added = structure.Add(1, 2) とかし…