title: (Shared)Pointer to Singelton
body: <p>I found this implementation of a Singleton. 
  How can I make a pointer or a shared pointer to this?`</p>
  
  <p>And why is this not working?
  auto test = Singleton::Instance();</p>
  
  <pre><code>class Singleton
  {
  public:
  static Singleton &amp; Instance()
  {
      static Singleton myInstance;
      return myInstance;
  }
  
  // delete copy and move constructors and assign operators
  Singleton(Singleton const&amp;) = delete;             // Copy construct
  Singleton(Singleton&amp;&amp;) = delete;                  // Move construct
  Singleton&amp; operator=(Singleton const&amp;) = delete;  // Copy assign
  Singleton&amp; operator=(Singleton &amp;&amp;) = delete;      // Move assign
  
  // Any other public methods
  
  protected:
  Singleton()
  {
  }
  
  ~Singleton()
  {
  }
  
  // And any other protected methods.
  };
  </code></pre>