我有一个模板类,称为Cell
,这里的定义:
template <class T>
class OneCell
{
.....
}
我有一个从Cell
到 T 的演员表操作员,在这里
virtual operator const T() const
{
.....
}
现在我有派生类,称为DCell
,here
template <class T>
class DCell : public Cell<T>
{
.....
}
我需要覆盖 Cell 的演员表运算符(插入一点 if),但在我需要调用 Cell 的演员表运算符之后。在其他方法中,它应该类似于
virtual operator const T() const
{
if (...)
{
return Cell<T>::operator const T;
}
else throw ...
}
但我得到一个编译器错误
错误:“const int (Cell::)()const”类型的参数与“const int”不匹配
我能做些什么?
谢谢你,对我糟糕的英语感到抱歉。