title: trying to split a template member function into header and cpp files
body: <p>The following code gives me an error <code>"unable to match function definition to an existing declaration"</code>. Is my syntax correct? </p>
  
  <p>CharPlayer.h</p>
  
  <pre><code>class CharacterPlayer
      {
      public:
      template &lt;class cType&gt;
          cType createCharacter(cType characterType);
  
      };
  </code></pre>
  
  <p>CharPlayer.cpp</p>
  
  <pre><code>template &lt;class cType&gt;
  cType CharacterPlayer::createCharacter(cType characterType)
  {
      return 3;
  }
  </code></pre>
  
  <p>Main</p>
  
  <pre><code>CharacterPlayer *controllerPntr = new CharacterPlayer;
      controllerPntr-&gt;createCharacter(1);
  </code></pre>