#include #include using namespace std; class C { public: void f (int) { cout << "int\n"; } void f (string) { cout << "string\n"; } void f (bool) { std::cout << "bool\n"; } }; main() { C c; c.f ("xxx"); } >>>>> prints: bool Why?!