I have a template struct:
template<typename T2, class, typename, class T3 = vec1<T2> >
struct vec2
{
template<typename D2, class, typename, class D3>
void f14(int a);
template<typename D2, class, typename, class D3>
void f15(int a);
};
And I want to define, for example function f15. I have no idea, what should I write on the place of the "??". I tried to solve this problem in a different way. But compiler kills my dream to compile my program.
template<typename T2, class , typename , class T3>
template<typename D2, class , typename , class D3>
void vec2<T2,??,??,T3>::f15(int a) { }
How should I define the function f15?
What is the scientific name for such constructions "class , typename ,"? I googled a lot ("unnamed template parameter", etc...), but I didn't found anything about it. I guess, it alikes the function with unnamed arguments. I would like to read something about it - from C++ standart or from other sources, but I don't know where the necessary information is.