#include #include using namespace std; inline void print(double d) {cout << fixed << d << "\n";} template void f(const T& t) { print('A'); //This print is bound at f's point of definition. print(t); //This print is bound at f's point of instantiation. } inline void print(int i) {cout << i << "\n";} int main() { f('A'); return EXIT_SUCCESS; } inline void print(char c) {cout << "'" << c << "'\n";}