如何使用 typdef 名称 C++ typedef 模板 class
How to typedef a template class with typdef name C++
我有这个typedef
:
typedef uint16_t MCPhysReg;
我想声明(在另一个文件中):
typedef MapVector<unsigned, MCPhysReg> ConsecRegsMap;
MapVector
是一个模板 class(来自另一个文件):
template<typename KeyT, typename ValueT,
typename MapType = llvm::DenseMap<KeyT, unsigned>,
typename VectorType = std::vector<std::pair<KeyT, ValueT> > >
class MapVector {
...
}
但是我收到了这个错误:
syntax error: missing ';' before '<'
有什么想法吗?
所以在这个文件中包含另一个文件,否则你的编译器怎么会知道 MapVector
是什么?
我有这个typedef
:
typedef uint16_t MCPhysReg;
我想声明(在另一个文件中):
typedef MapVector<unsigned, MCPhysReg> ConsecRegsMap;
MapVector
是一个模板 class(来自另一个文件):
template<typename KeyT, typename ValueT,
typename MapType = llvm::DenseMap<KeyT, unsigned>,
typename VectorType = std::vector<std::pair<KeyT, ValueT> > >
class MapVector {
...
}
但是我收到了这个错误:
syntax error: missing ';' before '<'
有什么想法吗?
所以在这个文件中包含另一个文件,否则你的编译器怎么会知道 MapVector
是什么?