Linux上でGCC 4.8.4でコンパイルしています(-std = C++ 0x -fPIC)。GCCで配列を使用できません
は、私は私で定義された配列を使用したいが、私はこのエラーを取得しています:
class value
{
public:
typedef std::vector<value> array;
typedef std::map<std::string, value> object;
protected:
int type_;
union
{
...
array* array_;
};
typedef value::array array;
}
class ErrorMessage
{
array my_array;
}
コンパイルエラー:
/usr/include/c++/4.8/array:81:12: note: template<class _Tp, long unsigned int _Nm> struct std::array
struct array
^
../sources/ErrorMessage.h:290:2: error: ‘array’ does not name a type
array my_array;
この問題を解決する方法はありますか? (GCC 4.4.7で動作します)
ありがとうございます。
この型またはサイズの型は宣言しません。何の配列?牛?文字ですか?飛行機? –
あなたは*テンプレート構造*である['std :: array'](http://en.cppreference.com/w/cpp/container/array)を使用しているようです。テンプレートの引数を指定する必要があります。 –
私はOPが* 1行*を忘れてしまったかもしれないと思います。 –