c ++模板类澄清

时间:2014-05-10 10:13:21

标签: c++ templates typedef

为什么我可以使用模板类' listmap'以这种方式。

其中,我可以在。

中输入def listmap
typedef listmap<string,string> str_str_map;

listmap的模板如下。

template <typename Key, typename Value, class Less=xless<Key>>
class listmap

我可以看到字符串是与typename键和typename值的对应关系,但为什么typedef中不需要class Less?

1 个答案:

答案 0 :(得分:0)

提供的Less有默认值,类型为xless<Key>。因此,如果您不提供第三个参数,您将使用xless<string>(在您的情况下)。