ヘッダー ファイルに単純なクラスがあります: a.hh
#ifndef a_hh
#define a_hh
class a
{
public:
int i;
a()
{
i = 0;
}
};
#endif
次に、ファイルがあります:b.cc
#include <iostream>
#include "a.hh"
using namespace std;
int main(int argc, char** argv)
{
a obj;
obj.i = 10;
cout << obj.i << endl;
return 0;
}
>
この時点まではすべて問題ありません。コードをコンパイルすると、正常にコンパイルされます。しかし、クラスにベクトルを追加するとすぐに:
#ifndef a_hh
#define a_hh
class a
{
public:
int i;
vector < int > x;
a()
{
i = 0;
}
};
#endif
以下のようなコンパイル エラーが発生します。
> CC b.cc
"a.hh", line 7: Error: A class template name was expected instead of vector.
1 Error(s) detected.
ここでベクトルをメンバーとして宣言する際の問題は何ですか?