1. 정의템플릿: 템플릿은 함수나 클래스를 정의할 때 데이터 타입을 일반화하여 여러 타입에 대해 동일한 로직을 적용할 수 있게 해줍니다. 템플릿은 컴파일 시간에 인스턴스화되어 특정 타입에 맞는 코드로 변환됩니다.함수 오버로딩: 함수 오버로딩은 같은 이름의 함수를 여러 개 정의하되, 매개변수의 타입이나 개수를 다르게 하여 서로 다른 기능을 수행할 수 있게 합니다. 즉, 함수의 이름은 같지만 매개변수의 목록이 다릅니다. 템플릿 예제:template T add(T a, T b) { return a + b;}함수 오버로딩 예제:int add(int a, int b) { return a + b;}double add(double a, double b) { return a + b;}3. 타입 결정 시..