function-overloading/overloading-6.cc - 'double to char' instead of 'double to Point'. | Lecture 3 - slide 9 : 27 Program 7 |
/* One best match using a standard conversions. One match at lower level */ /* (user defined conversion). One not matching at all. */ #include <iostream> #include <string> #include "point.h" using namespace std; void f(Point p){ // Match - user-defined conversion cout << "f(Point)" << endl; } void f(char *c){ // No match cout << "f(char *)" << endl; } void f(char c){ // Match - standard conversion cout << "f(char)" << endl; } int main(){ double c = 5.5; f(c); // A single best match: f(char) // The conversion double -> char is in a higher category than // the user-defined double -> Point } // This example is continued in the next program...