<分区>
我有这个类定义(这里简化了),它用 VS2008 编译得很好。在 VS2017 中,第一个尖括号出现语法错误 C2059:
template < typename Function, typename Base, typename Specialiser = Base >
class FunctionTermBase : public Base
{
public:
// typedef typename Function::result_type result_type;
typedef typename Base term_type;
typedef typename Specialiser specialiser;
protected:
FunctionTermBase() { }
public:
template <typename T>
struct Specialise {
typedef typename specialiser::Specialise<T>::type type;
};
};
如果有人能告诉我这段代码有什么问题,我将不胜感激?