之前我已经为类创建了实例化文件,但我很好奇我将如何为一个函数创建一个。这是我制作的一个程序的例子。
template <typename T>
void deSelSort(T arr[], int n)
{
int j = n - 1;
for (int i = 0; i < n; i++)
{
cout << arr[i] << " ";
}
cout << endl;
for(int i = 0; i < j; i++, j--) {
int min=i;
int max=i;
int temp;
for (int temp2 = i + 1; temp2 <= j; temp2++)
{
if (arr[temp2] < arr[min])
{
min = temp2;
}
if (arr[temp2] > arr[max])
{
max = temp2;
}
}
if (min > max) {
temp=min;
min=max;
max=temp;
arr[min] = max;
arr[max] = min;
}
if (min > i)
{
temp = arr[i];
arr[i] = arr[min];
arr[min] = temp;
}
if (max < j)
{
temp = arr[j];
arr[j] = arr[max];
arr[max] = temp;
}
for (int i = 0; i < n; i++)
{
cout << arr[i] << " ";
}
cout << endl;
};
}
如果我想创建一个包含int和double的数组,那么实例化文件会是什么样子?现在我的文件看起来像这样
#include "ex3_16.cpp"
template class deSelSort<int>;
template class deSelSort<double>;
答案 0 :(得分:0)
如果我想创建一个包含
ints
和doubles
的数组,实例化文件会是什么样的?
template void deSelSort<int>(int[], int);
template void deSelSort<double>(double[], int);