【发布时间】:2021-09-04 22:57:06
【问题描述】:
C++Builder 10.4.2
我创建了一个带有纯虚函数的 TFrame。然后从那个 TFrame 派生出另一个 TFrame,但没有覆盖基类虚函数。
我希望得到编译器错误,但没有。
该行为是否未在 VCL 类中实现?
这是代码:
// create a frame from File/New..., add a pure virtual function
class TFrame4 : public TFrame
{
__published: // IDE-managed Components
private: // User declarations
public: // User declarations
__fastcall TFrame4(TComponent* Owner);
virtual void func() = 0;
};
extern PACKAGE TFrame4 *Frame4;
// derive a frame from it, put it on the main form. compile/run
without error
class TFrame5 : public TFrame4
{
__published: // IDE-managed Components
private: // User declarations
public: // User declarations
__fastcall TFrame5(TComponent* Owner);
};
extern PACKAGE TFrame5 *Frame5;
【问题讨论】:
-
请提供minimal reproducible example。尤其要展示如何创建派生类的实例。
标签: function c++builder virtual