c++ - Template specialization problem
The following code:- #include <stdio.h> template <int I, int J> struct Iterate { static void print() { printf("%d %d\n", I, J); Iterate<I, J + 1>::print(); } }; template <int I> struct Iterate<I, I> { static void print() {printf("%d %d\n", I, I);} }; int main() { Iterate<4, 1>::print(); } when compiled with dmc produces the output:- 1 1 when I was expecting to see 4 1 4 2 4 3 4 4 Does anybody know what the problem is? Regards, John
May 13 2004