title: Const Overloading: Public-Private Lookup in C++ Class
body: <p>The following code does not compile, saying " error C2248: 'A::getMe' : cannot access private member declared in class 'A'". Why? I am trying to call the public interface. </p>
  
  <pre><code>class B
  {
  };
  
  class A
  {
  public:
      const B&amp; getMe() const;
  private:
      B&amp; getMe(); 
  };
  
  int main()
  {
  A a;
  const B&amp; b = a.getMe();
  return 0;
  }
  </code></pre>