具有不同参数的继承类构造函数的术语是什么?

时间:2013-09-16 23:14:16

标签: c++ inheritance terminology

以下面的例子为例。您使用什么术语来描述具有与基类不同的参数的继承类?我了解subbase隐式调用base()。你不会称之为覆盖,更正,因为基本构造函数仍然被调用?

#include <iostream>
#include <stdio.h>
#include <string>

using namespace std;

class base
{
public:
   base()
   {
      cout << "Hello!\n";
   }
};

class subbase : public base
{
public:
   subbase(string s)
   {
      cout << s << endl;
   }
};

int main()
{
   subbase test("Hello World!\n");

   return 0;
}

2 个答案:

答案 0 :(得分:0)

重载了我的朋友。它具有相同的方法名称,但参数或返回类型不同

但在这种情况下,您只是创建了全新的构造函数。不是真的继承或任何东西。

答案 1 :(得分:0)

重载:在派生类中更改继承函数的签名时。

重新定义(在正常函数的情况下)/重写(在虚函数的情况下):当在派生类中保持基类函数的签名相同时。但是你改变了实现部分。

但我不是在这里谈论建设者。我在谈论班级的通常成员职能。