Template function inside template class

I have this code:

template <class T> class MyClass { public: template <class U> void foo() { U a; a.invoke(); } }; 

I want this in this form:

 template <class T> class MyClass { public: template <class U> void foo(); }; template <class T> /* ????? */ void MyClass<T>::foo() { U a; a.invoke(); } 

How can i do this? What is the correct syntax?

+72
c ++ templates
Dec 27 '11 at 1:27
source share
1 answer

Write this:

 template <class T> template <class U> void MyClass<T>::foo() { /* ... */ } 
+112
Dec 27 2018-11-12T00:
source share



All Articles