Как правильно определить функцию шаблона в классе шаблона с классом шаблона в качестве параметра шаблона - PullRequest
1 голос

У меня проблема с определением функции класса, когда у класса есть другой класс в качестве параметра шаблона.

исключение составляет "список аргументов шаблона должен соответствовать списку параметров шаблона"

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 Ответ

0 голосов

Хорошо, будет правильно иметь псевдоним для arr_traits, чтобы у нас не было класса в списке параметров шаблона.

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() { }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...