1

I have a problem with defining class-function when class have another class as a template parameter.

the exception is "template argument list should correspond to a template parameter list"

template <class T, size_t N, class arr_traits<T>>
class NDimArray {
     void f();
 }

 template <class T, size_t N, class arr_traits<T>>
 void NDimArray<T, N, arr_traits<T>>::f() { } // here

1 Answers1

0

Ok, it'll be properly to have an alias for arr_traits, so that we don't have class in a template parameter list.

template <class T, size_t N, class array_traits = arr_traits<T>>
class NDimArray {
     void f();
 }

 template <class T, size_t N, class arr_traits>
 void NDimArray<T, N, arr_traits<T>>::f() { }