   template member function with addtional parameter
  Say I have a class X::template<class T>class X {public:  void foo ();  void foo2();}template <class T>;void X<T>::foo () {}template <class T>void X<T>::foo2 () {}Essentiall I want to do like below (but the compiler compliance abit):template<class T>class X {public:  template <class U>  void foo ();  void foo2();}My problem is how can I add an additional template paramete to the function foo, without also adding it to foo2.   
  Make it a member function template?   ;  Cool, its the last part on defining it outside which gave me a little trouble.   