template<unsigned int n>
struct Factorial {
enum { value = n * Factorial<n-1>::value};
};
template<>
struct Factorial<0> {
enum {value = 1};
};
int main() {
std::cout << Factorial<5>::value;
std::cout << Factorial<10>::value;
}
выше программа вычисляет факторное значение во время компиляции. Я хочу напечатать факторное значение во время компиляции, а не во время выполнения, используя cout. Как мы можем печатать факториальное значение во время компиляции?
Я использую VS2009.
Спасибо!