#include <iostream>
#include "Cents.h"
int getMax(int x, int y)
{
return (x>y) ? x : y;
}
int getMax(double x, double y)
{
return (x>y) ? x : y;
}
// ... 너무 많다!
template<typename T> // 여러가지 변수명이 반복되는 자리를 T로 바꿈
//template<class T> 와 같이 class를 넣을 수도 있다.
T getMax(T x, T y)
{
return (x > y) ? x : y;
}
int main()
{
std::cout << getMax(1, 2) << "\n";
std::cout << getMax(3.14, 1.592) << "\n";
std::cout << getMax(1.0f, 3.4f) << "\n";
std::cout << getMax(Cents(5), Cents(9)) << "\n"; // class에 <<가 오버로딩 되있어야함
// > operator도 오버로딩 되있어야함.
return 0;
}