title: What is the difference between private and protected members of C++ classes?
body: <p>What is the difference between <code>private</code> and <code>protected</code> members in C++ classes?</p>
  <p>I understand from best practice conventions that variables and functions which are not called outside the class should be made <code>private</code>—but looking at my MFC project, MFC seems to favor <code>protected</code>.</p>
  <p>What's the difference and which should I use?</p>