Как определить функцию шаблона внутри класса шаблона в файле * .inl - PullRequest
17 голосов
/ 05 октября 2011

Я пишу объявление шаблона в файле * .hpp и их «определение» в файле * .inl, связанное с * .hpp

, примерно так:

//*.hpp
template <typename T1, typename T2>
class SomeClass
{
public:
    void someMethod();
};

//*.inl
template <typename T1, typename T2>
void SomeClass<T1, T2>::someMethod()
{
}

, но как писатьдополнительный шаблонный метод внутри класса шаблона в файле * .inl?

//*.hpp
template <typename T1, typename T2>
class SomeClass
{
public:
    void someMethod();

    template <typename E>
    void extraTypedMethod(E & e);
};

//*.inl
template <typename T1, typename T2>
void SomeClass<T1, T2>::someMethod()
{
}

//how can I here define extraTypedmethod?

1 Ответ

30 голосов
/ 05 октября 2011

Вот ваше определение:

template <typename T1, typename T2>
template <typename E>
void SomeClass<T1, T2>::extraTypedMethod(E & e)
{
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...