有关vector的一个问题
在写程序的时候,我定义了个类aa,想用vector声明一个vector<vector<aa>>会报错,但是我声明vector<vector<int>>却可以,这是为什么,求解。
这是程序:
#include <vector>
#include <iostream>
using std::vector;
using std::cout;
using std::endl;
class aa
{
public:
aa();
};
void main()
{
vector<vector<int> > x;
vector<vector<aa>> aa;
return;
错误:
error C2146: syntax error : missing ',' before identifier 'aa'
error C2143: syntax error : missing '>' before ';'
error C2974: 'vector' : invalid template argument for '_A', type expected
[解决办法]
vector<vector<aa> > aa;
加空格
[解决办法]
>>是右移运算符。