title: Is there any advantage to using a naked pointer rather than a weak_ptr?
body: <p><strong>Question</strong>: Are there any compelling reasons to use naked pointers for non-owning resources or should we be using <code>weak_ptr</code>?</p>
  
  <p><a href="http://en.cppreference.com/w/cpp/memory/weak_ptr" rel="nofollow noreferrer">CPP.reference</a> states</p>
  
  <blockquote>
    <p><code>std::weak_ptr</code> models temporary ownership: when an object needs to be accessed only if it exists, and it may be deleted at any time by someone else</p>
  </blockquote>
  
  <p>But then, in the accepted answer for <a href="https://stackoverflow.com/questions/8706192/which-kind-of-pointer-do-i-use-when">Which kind of pointer do I use when?</a> we have the statement:</p>
  
  <blockquote>
    <p>Use dumb pointers (raw pointers) or references for non-owning references to resources and when you know that the resource will outlive the referencing object / scope. Prefer references and use raw pointers when you need either nullability or resettability.... If you want a non-owning reference to a resource, but you don't know if the resource will outlive the object that references it, pack the resource in a <code>shared_ptr</code> and use a <code>weak_ptr</code>.</p>
  </blockquote>
  
  <p>This answer is followed by a lot of back-and-forth about the use of naked pointers, with no real resolution. I can't see any reason for using dumb pointers. Am I missing something?</p>