template<int N>
class Factorial {
public:
enum { value = N * Factorial<N-1>::value };
};
コレなんですか?何をしているかすら分からない・・・・・・・・・