我知道如果我有一个抽象类,那么我无法创建抽象类类型的对象。但假设“Base”是基类,“Derived”是派生类。在基类中,我有一个成员变量名称。
Base.h
Base(string name = "");
Base.cpp
Base(string theName){name = theName);
Run Code Online (Sandbox Code Playgroud)
这不是创建一个对象吗?
在派生类中,我有成员变量age。现在在派生类的默认构造函数中
Derived.h
Derived(string name = "", int theAge = 0);
Derived.cpp
Derived(string theName, int theAge):Base(theName) { age = theAge }
Run Code Online (Sandbox Code Playgroud)
这不是也调用了 Base 的默认构造函数吗?那么,我是否可以调用参数化构造函数但不能调用默认构造函数?
另一件事,如果我在基类中除了纯函数之外还有另一个函数,如果不允许为基类创建对象,我如何调用该函数?
提前致谢!