用这样的方式声明一个二维数组
vector<vector<Point2f>>
时,在编译的时候会提示
error: ‘>>’ should be ‘> >’ within a nested template argument list
其原因在Essentila C++里面有讲到,是因为编译是基于所谓的maximal munch规则,规则要求,每个符号序列总是以合法符号序列中最长的那个解释。 因为>>是个合法的运算符,所以编译时会被看作是>>符号。
举另外一个例子、
a+++p
会被解释为a++ +p