1 template <class T> 2 struct Template 3 { 4 typedef int Val; 5 Val fun(void); 6 }; 7 8 template <class T> 9 typename Template<T>::Val Template<T>::fun(void) 10 { 11 }