带虚函数的 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);
    }
    ...
};