title: cast pointer to pointer as LPVOID*
body: <p>I have following code:</p>
  
  <pre><code>IShellLink* psl;
  HRESULT hres = CoCreateInstance(
      CLSID_ShellLink, 
      NULL, 
      CLSCTX_INPROC_SERVER, 
      IID_IShellLink, 
      (LPVOID*)&amp;psl);
  </code></pre>
  
  <p>It is correctly compiled. But I need to replace <code>(LPVOID*)&amp;psl</code> by <code>*_cast</code>. What cast I must use?</p>
  
  <p><code>static_cast&lt;LPVOID*&gt;(&amp;psl)</code> generates an error (in MSVC 2013).</p>
  
  <p>Will it be correct to use <code>reinterpret_cast&lt;LPVOID*&gt;(&amp;psl)</code>?</p>