我使用默认构造函数,复制构造函数和赋值运算符重载来定义和实现类T
我试过以下
#include <vector>
//template <class Board>
typedef std::vector<Board> t_bvector;
有或没有评论,我收到此错误
../Piece.H:143:1: error: ‘t_bvector’ does not name a type
In file included from ../Board.C:1:0:
../Board.H:14:1: error: template declaration of ‘typedef’
In file included from ../Board.C:1:0:
我没有C ++ 11,并希望保留基本的矢量方法,如.insert,.size 有办法解决吗?或者对STL容器有更好的建议吗?
答案 0 :(得分:2)
我不确定您要对template <class Board>
部分做什么,但我猜您在实际代码中出现了一些错误的语法错误。
以下是您应该如何设置此类typedef的示例。
#include <vector>
class Board
{
public:
int foo;
};
typedef std::vector<Board> t_bvector;
修改
现在你已经解释了一下:
class Board;
typedef std::vector<Board> t_bvector;
class Board
{
public:
t_bvector SomeFunction();
};