Почему доступная функция не вызывается через неявное преобразование?
Почему следующая программа выдаёт ошибку, а не вызывает доступную функцию с int-ом через неявное преобразование к 42?
struct A {
void foo(int);
private:
void foo(double);
} a;
int main() {
a.foo(42.);
}