title: cast to std::thread states calling a private constructor
body: <p>Given a vector of <code>std::thread</code></p>
  
  <pre><code>std::vector&lt;std::thread&gt; vThreads;
  
  vThreads.push_back(std::thread([]() {
          std::thread _t;
          _t.detach();
      }));
  
  for (int i=0; i &lt; vThreads.size(); i++)
  {
      std::thread _t = (std::thread) vThreads.at(i); &lt;!-- ERROR
  
  
  }
  </code></pre>
  
  <p>trying to perform the cast in the <code>for loop</code> I get: <code>Calling a private constructor of class 'std::__1::thread'</code></p>
  
  <p>But looking at <code>http://www.cplusplus.com/reference/thread/thread/</code> I dont see anything constructor marked as private.</p>
  
  <p>What do I misunderstand?</p>