title: typeid result across different dll's
body: <p>I have two dlls which both declare a templated type, let's call A.
  If the declaration of A is sufficiently intricate, it happens that
  the result of typeid(A).name() is different when called in  functions in two different
  dll's.</p>
  
  <p>example:</p>
  
  <p>DLL1:</p>
  
  <pre><code>struct MyType: public A&lt; TEMPLATE_LIST_OF_A &gt;{}
  
  void f(){
  std::string name1 = typeid(A).name();
  }
  </code></pre>
  
  <p>DLL2:</p>
  
  <pre><code>struct MyType: public A&lt; TEMPLATE_LIST_OF_A &gt;{}
      void f(){
      std::string name2 = typeid(A).name();
      }
  </code></pre>
  
  <p>for example name1 could be something like: "???MyType??? etc"
  while name2 could be "???A??TEMPLATE_LIST_OF_A etc".</p>
  
  <p>Which actually makes quite sense to me, but is there is a way, provided that the
  names used are the samem to guarantee that name1==name2 ?</p>
  
  <p>thanks,
  rob</p>