【发布时间】:2011-10-05 10:23:59
【问题描述】:
我知道当我们在另一个模板中使用模板时,我们应该这样写:
vector<pair<int,int> > s;
如果我们写的时候没有空格:
vector<pair<int,int>> s;
我们会得到一个错误:
`>>' 应该是嵌套模板参数列表中的 `> >'
我认为这是可以理解的,但我不禁想知道,在什么情况下这真的是模棱两可的?
【问题讨论】:
-
我认为原因很简单,因为它很难解析:
vector < pair < int, int >> s;可能是(vector < pair < int),(int >> s);
标签: c++ templates compiler-construction vector lexicographic