Por que um método const público não é chamado quando o método não const é privado?
Considere este código: struct A { void foo() const { std::cout << "const" << std::endl; } private: void foo() { std::cout << "non - const" << std::endl; } }; int main() { A a; a.foo(); } O erro do compilador é: erro: 'void A :: foo ()' é privado`. Mas...