https://cplusplus.com/reference/forward_list/forward_list/
查看类模板时,常常会看到这些东西,如下图所示的都分别是什么意思呢?allocator<T>
是一个仿函数默认模板实参
// compare 有一个默认模板实参less<T>和一个跌认函数实参F0)
template <typename T,typename F=less<T>>
int compare(const T &vl, const T &v2,F f= F())
{
if (f(vl,v2)) return -1;//使用时,用f()————它是一个仿函数,
if (f(v2,vl)) return l;
return0:
}
分析这段代码:
less<T>
并为其对应的函数参数也提供了默认实参T
less 函数对象类(即仿函数)
,它是使用与 compare一的类型参数实例化的f
将是类型E的一个默认初始化的对象