默认参数和泛型类

时间:2014-04-22 22:03:25

标签: c++ generics comparator

template <type1 _Type1, type2 _Comparator=...  >

我正在尝试实现一个类。第一个参数可以是字符串,集合或列表。第二个参数是比较器。我想使用比较器&lt;作为type2的默认参数。

我没有找到正确的语法,请你帮帮我吗?

编辑:给出的答案很好,但不是我的情况。 我意识到我在寻找:

template <typename _Type, typename _Comparator=less<typename _Type::value_type> >

而不是

template< class Type1, class Comparator = std::less<Type1> >

因为我需要比较属于_Type的元素。

1 个答案:

答案 0 :(得分:1)

认为这可能是你所追求的:

template< class Type1, class Comparator = std::less<Type1> >

请注意,以下划线后跟大写字母开头的名称将保留给实现。

std::less<functional>标头声明。