您的子类化尝试
class MyTextEdit:protected QTextEdit{ void focusInEvent(); };QTextEdit* myTextEdit=new MyTextEdit();几乎可以。
仅仅因为该方法是受保护的并不意味着您应该继承protected。
- 一个受保护的方法说:这不是我的界面的一部分。除了我之外,没有人可以打电话给我。我自己称呼它(作为事件处理的一部分)。该方法可以在子类中重写。
- 继承保护说:没有人应该知道这种继承,它是一个实现细节,可能对扩展我的类有用。
您需要常规的公共继承。
class MyTextEdit:public QTextEdit{ void focusInEvent(); };QTextEdit* myTextEdit=new MyTextEdit();现在您说的是MyTextEdit替代QTextEdit。您可能想要添加一个构造函数,以将父窗口小部件提供给MyTextEdit。
在c ++中,没有像Java一样的匿名内部类这样的东西。



