14 35 E:\dontknow\Administrator\Documents\csdn1.cpp [Error] '>>' should be '> >' within a nested template argument list
时间: 2023-07-21 07:43:30 浏览: 90
人工智能---动物识别专家系统.doc
这个错误通常是由于在嵌套的模板参数列表中使用了 `>>`,导致编译器无法正确解析。这是因为 `>>` 在 C++11 中被解释为右移运算符,因此需要在嵌套的模板参数列表之间添加空格,以避免歧义。
例如:
```
std::vector<std::vector<int>> envelopes = {{5,4},{6,4},{6,7},{2,3}};
auto res = maxEnvelopes(envelopes);
for (auto& v : res) {
for (auto i : v) {
std::cout << i << " ";
}
std::cout << std::endl;
}
```
应改为:
```
std::vector<std::vector<int> > envelopes = {{5,4},{6,4},{6,7},{2,3}};
auto res = maxEnvelopes(envelopes);
for (auto& v : res) {
for (auto i : v) {
std::cout << i << " ";
}
std::cout << std::endl;
}
```
注意,这里的空格是必需的,否则编译器会将 `>>` 解释为右移运算符,从而导致语法错误。
阅读全文