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

読んだ本

三毛猫ホームズの降霊会 / 赤川次郎 ISBN:4334076009 キーリ IX 死者たちは荒野に永眠る 下 / 壁井ユカコ ISBN:4840233896 エクスプローラー2 憂感少女 / 北山大詩 ISBN:4829163496 イリスの虹2 ミス・ミステイク / 七月隆文 ISBN:4840233942 シャルロット・…

テンプレートでたらいまわし(6回目)

C++

遅延評価する前段階のちょっとした変更のつもりが、予想外な高速化ができた。 #include <iostream> /* Int */ template <int x> struct Int { enum { value = x }; }; /* Tarai */ template <int x, int y, int z> struct Tarai; template <class X, class Y, class Z> struct Tarai0; template <bool b, class X, class Y, class Z> struct Tarai1; template </bool></class></int></int></iostream>

テンプレートでたらいまわし(5回目)

C++

Typelistを使わない方法。この方がさらに速い(しかも引数が0の場合も動く)。 #include <iostream> /* True */ class True; /* False */ class False; /* Bool */ template <bool b> struct Bool; template <> struct Bool<true> { typedef True Result; }; template <> struct Bool<false></false></true></bool></iostream>…

テンプレートでたらいまわし(4回目)

C++

さらに高速化・簡単化できた。 #include <iostream> /* NullType */ class NullType; /* Typelist */ template <class T, class U> struct Typelist; /* Length */ template <class T> struct Length; template <> struct Length<NullType> { enum { value = 0 }; }; template <class T, class U> struct Length< Typelist<T, U> > { </t,></class></nulltype></class></class></iostream>…