gpt4 book ai didi

c++ - 模板 <类 T> 错误 : expected initialiser before 'template'

转载 作者:太空狗 更新时间:2023-10-29 20:29:13 25 4
gpt4 key购买 nike

嗨 stackoverflow 论坛的人,我直接从课本 Absolute C++ Fourth Edition Savitch ISBN-13: 978-0-13-136584-1 中输入这段代码。通用排序函数。第 728 页上的 sort.cpp 在第 17 行给出了错误:第 17 行:错误:"template"之前的预期初始化程序

有人能帮忙吗,因为我希望教科书“能正常工作”,这样我就可以研究代码,而不会陷入我不理解的额外错误中。是的,我研究过,但是这个错误的研究是有限的,因为我专注于Generic Sorting Function的更简单的学习点,希望学习Generic Template,希望学习hashtable ... phewww,深吸一口气。

我无法将发生错误的第 17 行加粗。

// This is the file sort.cpp.
template<class T>
void sort(T a[], int numberUsed)
{
int indexOfNextSmallest;
for (int index = 0; index < numberUsed - 1; index++)
{//Place the correct value in a[index]:
indexOfNextSmallest =
indexOfSmallest(a, index, numberUsed);
swapValues(a[index], a[indexOfNextSmallest]);
//a[0] <= a[1] <=...<= a[index] are the smallest of the original array
//elements. The rest of the elements are in the remaining positions.
}
}
template<class T>
void swapValues(T& variable1, T& variable2)
template<class T>
int indexOfSmallest(const T a[], int startIndex, int numberUsed)
{
T min = a[startIndex];
int indexOfMin = startIndex;
for (int index = startIndex + 1; index < numberUsed; index++)
if (a[index] < min)
{
min = a[index];
indexOfMin = index;
//min is the smallest of a[startIndex] through a[index].
}
return indexOfMin;
}

最佳答案

template<class T>
void swapValues(T& variable1, T& variable2);
^^^^^^
template<class T>
int indexOfSmallest(const T a[], int startIndex, int numberUsed)

在声明函数 swapValues() 之后,您似乎缺少一个 ;

附带说明一下,我不知道为什么函数声明悬在两个函数定义之间,尤其是在使用它的函数之后

关于c++ - 模板 <类 T> 错误 : expected initialiser before 'template' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10748255/

25 4 0