title: Having trouble creating vectors of System::String^
body: <p>So I have a regex expression to parse certain parts of a file name. I'm trying to store each part in its own vector until I use it later, but it won't let me. One error I get when I try making a vector of System::String^ is that <code>error C3698: 'System::String ^' : cannot use this type as argument of 'new'</code> Then, when I try just making a vector of std::string, it can't implicitly convert to type System::String^, and casting won't work either.</p>
  
  <pre><code>void parseData()
  {
      System::String^ pattern = "(\\D+)(\\d+)(\\w{1})(\\d+)\\.(\\D{3})";
      std::vector &lt; System::String^ &gt; x, y, filename, separator;
  
      Regex re( pattern );
  
      for ( int i = 0; i &lt; openFileDialog1-&gt;FileNames-&gt;Length; i++ )
      {
          Match^ m = re.Match( openFileDialog1-&gt;FileNames[i] );
          filename.push_back( m-&gt;Groups[0]-&gt;Value );/*
          x.push_back( m-&gt;Groups[1]-&gt;Value );
          separator.push_back( m-&gt;Groups[2]-&gt;Value );
          y.push_back( m-&gt;Groups[3]-&gt;Value );*/
      }                       
  }
  </code></pre>