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

メモ

RAIIじゃないautoと、関数テンプレートの型推論。

bind1st

上のコードはC++のSTLで言う所のbind1stという奴らしい。そんなのあったっけ、というか多分初耳。 STL触ってなさすぎるけど、まあいいかめんどくさいしテンプレートは何か鬱陶しいし…

振り返る

コードばかり載せていて日記らしくないなあと思った。まあいいか。

一応

コードと実行結果を。 import std.c.stdio; class Curry(T, X, Y){ this(int x0, T delegate(X x, Y y) f0){ x = x0; f = f0; } T opCall(Y y){ return f(x, y); } private: X x; T delegate(X x, Y y) f; } void main(){ int hoge(int x, int y){ return x …

class Curry(T, X, Y){ .. }

折角だからtemplate使って使いやすくしてみた…のはいいものの。 int hoge(int x, int y){ return x + y; } Curry!(int, int, int) f = new Curry!(int, int, int)(3, &hoge); f(4);こう書かないといけない。ちょっとあんまりだ。 どうしたものか…

curry化再び

結局の所、スタック変数を自前で覚えておけばいいのだ。簡単なことだった。 import std.c.stdio; class Curry{ this(int x0, int delegate(int x, int y) f0){ x = x0; f = f0; } int opCall(int y){ return f(x, y); } private: int x; int delegate(int x,…