title: How to check if the template parameter of the function has a certain type?
body: <p>Say I have a function with template type <em>T</em> and two other classes <em>A</em> and <em>B</em>.</p>
  
  <pre><code>template &lt;typename T&gt;
  void func(const T &amp; t)
  {
      ...........
      //check if T == A do something
      ...........
      //check if T == B do some other thing
  }
  </code></pre>
  
  <p>How can I do these two checks (without using Boost library)?</p>