title: C++11 Passing 'this' as paramenter for std::make_shared
body: <p>I'm trying to pass 'this' to the constructor using std::make_shared</p>
  
  <p>Example:</p>
  
  <pre><code>// headers
  class A 
  {
  public:
     std::shared_ptr&lt;B&gt; createB();
  }
  
  
  class B 
  {
  private:
     std::shared_ptr&lt;A&gt; a;
  
  public:
     B(std::shared_ptr&lt;A&gt;);
  }
  
  
  // source
  std::shared_ptr&lt;B&gt; A::createB()
  {
     auto b = std::make_shared&lt;B&gt;(this); // Compiler error (VS11 Beta)
     auto b = std::make_shared&lt;B&gt;(std::shared_ptr&lt;A&gt;(this)); // No compiler error, but doenst work
     return b;
  }
  </code></pre>
  
  <p>However this does not work properly, any suggestions how I can properly pass this as an argument?</p>