2006-06-21から1日間の記事一覧

いやまて

typeof(T[0])[] map(T, U)(T ary, U dg){ typeof(ary[0])[] rary; rary.length = ary.length; foreach (int i, typeof(ary[0]) t; ary){ rary[i] = dg(t); } return rary; }これがコンパイル通るという… これでMyArray的なものでも使えるようになったけど、…

おや…

上のmapは、どう考えてもおかしい…Tが配列じゃない時に返値が違ってしまう。 どうせ配列しか省略記法使えないし、矢張り元に戻したほうが良さそう。

適当訳

Added opIn_r operator overload. Function return types for lambda delegates can now be inferred. delegate keyword now optional for lambda delegates. Shadowing local variable declarations is now deprecated. New function template syntax. 要は…

New function template syntax.

6月12日の日記で、 関数テンプレートの省略記法ないのが気に食わないけどすっきりしている!気にいりました! と書いてたんですが。 気に入りました! 他にもあるようだけれど英語力がないので理解できません!今日は早く家に帰れるので帰ったら調べよう。

map

それは each じゃなくて map か collect でしょうといわれた。 全くその通りだと思った。 一番初めに思い出したメソッド名が each だったから… あと、配列だけでなくて配列の振る舞いをするインスタンスにも使えると良いですね、というつっこみをうけて、若…

無名関数

そして無名関数でこんな風に使える。 a = a.each( (int a) { return a * a; } );λ!λ!

関数テンプレート

別になんてことはないけど一応。 この前書いたeachがこうなる。 T[] each(T, U)(T[] ary, U dg){ T[] rary; rary.length = ary.length; foreach (int i, T t; ary){ rary[i] = dg(t); } return rary; }気に入りました!