#include #include #include #include #include "date.h" using namespace std; template //function declaration and definition inline T min(T a, T b) { return b < a ? b : a; } inline const char *min(const char *a, const char *b) { return strcmp(b, a) < 0 ? b : a; } inline const wchar_t *min(const wchar_t *a, const wchar_t *b) { return wcscmp(b, a) < 0 ? b : a; } int main() { date today; date tomorrow = today + 1; cout << ::min(10, 20) << "\n" //calls line 9 << ::min(3.14, 2.71) << "\n" //calls line 9 << ::min(today, tomorrow) << "\n" //calls line 9 << ::min("hello", "goodbye") << endl; //calls line 14 wcout << ::min(L"hello", L"goodbye") << L"\n"; //calls line 19 return EXIT_SUCCESS; }