1
함수에 int 배열을 전달하는 대신 선택 정렬을 구현할 때 함수 템플릿을 사용하는 것이 바람직한 이유는 무엇입니까? 정수를 비교하려고 할 때 모든 유형의 배열에서 작동 할 수있는 이유는 무엇입니까? 왜 스왑 함수에서 다른 유형을 사용 했습니까? Item을 다시 사용할 수 없습니까? 이 선택을 구현 정렬 대신 함수에 int 배열을 전달할 때 기능 템플릿을 사용하는 것이 바람직하다 왜C++의 selectionSort 함수에서 템플릿 사용
template <class Item>
void selectionSort(Item a[], int n) {
for (int i = 0; i < n - 1; i++) {
int min = i;
for (int j = i + 1; j < n; j++) {
if (a[j] < a[min])
min = j;
swap(a[i], a[min]);
}
}
}
template <class Object>
void swap(Object &el1, Object &el2) {
Object temp = el1;
el1 = el2;
el2 = temp;
}