C ++ - как реализовать шаблонную функцию-член вне шаблонного класса - PullRequest
11 голосов
/ 29 января 2011
template<int N>
class myClass
{
    template<typename T>
    void myFunction();
};

template<typename T>
void myClass<int N>::myFunction() {} // doesn't work, nor do many other combinations!

Привет,

Можно ли достичь вышеуказанного?Я могу реализовать myFunction в определении класса без проблем.Если так, какой будет синтаксис?GCC 4.2 сообщает мне:

отсутствует '>' для завершения списка аргументов шаблона

спасибо за вашу помощь

Ответы [ 2 ]

12 голосов
/ 29 января 2011

Вы ищете:

template <int N>
template <typename T> 
void myClass<N>::myFunction() {} 

Вам нужен один template для шаблона класса и один для шаблона функции-члена.

4 голосов
/ 29 января 2011
template<int N> template<typename T>
void myClass<N>::myFunction() {}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...