/************************************************************************ *
The following example shows a valid template declaration
with default initializers:
* ************************************************************************/
// This example shows a template declaration
// with default initializers.
#include <stdio.h>
template <class T, int i=1> class X
{
public:
T s;
X(int j=4);
int val(T&)
{
return i;
};
};
template <class T, int i> X<T,i>::X(int j):s(i){
printf("i=%d j=%d\n",i,j);
}
void main()
{
X<int> myX(2);
X<int,3> myX2(4);
}