首页 > 解决方案 > C++ 父类和子类具有同名的方法

问题描述

让我们有以下课程父母和孩子。

class parent
{

public:
    void Test(char* pParameter) {};
};

class child : parent
{
public:
    void Test(int pParameter) {};
};

如何解决以下问题?

child* c = new child();
c->Test("cccc");

它返回:“const char *”与“int”类型的参数不兼容。

我发现了这些方法:

  1. 重命名方法
  2. 将 c 转换为父类 ((parent*)c->Test("cccc");)
  3. 在子类方法 Test(char*) 中创建调用父类中的方法。

我不喜欢这两种解决方案。还有其他的吗?

标签: c++oop

解决方案


推荐阅读