带虚函数的 C++ 导数 class
C++ derivative class with virtual function
我在执行某项任务时遇到了问题。我需要写一个派生的 class,其中我需要确定,向量 FVect 仅包含字符 <'a'; 'z'>.
class Something {
private:
char FVect[3];
protected:
virtual void setValue(int _idx, char _val) { FVect[_idx] = _val; }
public:
Something() {};
};
我不知道如何在派生 class 中编写方法(不对 class 进行更改)因为 FVect 是私有的。
感谢您的帮助。
根据您当前的设置,您唯一可以做的就是在派生自 Something
的 class 中实现 setValue()
,如果 _val
在有效值,否则调用基本 class 方法(如果有效):
class Derived : public Something {
...
void setValue(int _idx, char _val) {
if ((_val < 'a') || (_val > 'z')) throw std::invalid_argument( "invalid character" );
Something::setValue(_idx, _val);
}
...
};
我在执行某项任务时遇到了问题。我需要写一个派生的 class,其中我需要确定,向量 FVect 仅包含字符 <'a'; 'z'>.
class Something {
private:
char FVect[3];
protected:
virtual void setValue(int _idx, char _val) { FVect[_idx] = _val; }
public:
Something() {};
};
我不知道如何在派生 class 中编写方法(不对 class 进行更改)因为 FVect 是私有的。
感谢您的帮助。
根据您当前的设置,您唯一可以做的就是在派生自 Something
的 class 中实现 setValue()
,如果 _val
在有效值,否则调用基本 class 方法(如果有效):
class Derived : public Something {
...
void setValue(int _idx, char _val) {
if ((_val < 'a') || (_val > 'z')) throw std::invalid_argument( "invalid character" );
Something::setValue(_idx, _val);
}
...
};