下面的代码无法编译:
//in definition
typedef double value_type;
//in implementation
template <typename T>
typename value_type sequence<T>::current( )
{
return data[used-1];
}
将“typename value_type”替换为“double”会导致代码按预期编译和工作。如果我已将 value_type 分配为等于 double,为什么我不能使用 typename value_type 代替 double?