title: alternative to virtual typedef
body: <p>I have an interface IEnumerable for template classes of List&lt;>, Array&lt;> and Dictionary&lt;>. I was hoping to use typedef to get their templated types T.</p>
  
  <p>I was hoping to do the following.</p>
  
  <pre><code>class IEnumerable
  {
  public:
      virtual typedef int TemplateType;
  }
  </code></pre>
  
  <p>And then override in inherited member, but you cant make a virtual typedef. So is there any other way that i could get the type of an unknown template class (IEnumerable is not template)?</p>