title: Can you use C++ templates to specify a collection type and the specialization of that type?
body: <p>Example, I want to specialize a class to have a member variable that is an stl container, say a vector or a list, so I need something like:</p>
  
  <pre><code>template &lt;class CollectionType, class ItemType&gt;
  class Test
  {
  public:
      CollectionType&lt;ItemType&gt; m_collection;
  };
  </code></pre>
  
  <p>So I can do:</p>
  
  <pre><code>Test  t = Test&lt;vector, int&gt;();
  t.m_collection&lt;vector&lt;int&gt;&gt; = vector&lt;int&gt;();
  </code></pre>
  
  <p>But this generates </p>
  
  <pre><code>test.cpp:12: error: `CollectionType' is not a template
  </code></pre>