相关疑难解决方法(0)

纯虚函数重载

我通常使用纯虚函数来处理我的代码所需的那些方法.因此,我创建接口,然后其他用户实现其派生类.派生类只将这些虚函数作为公共函数,而一些其他方法应该作为私有实现,因为我的代码不会调用它们.我不知道这是否可以被认为是OOP的一个好习惯(有没有设计模式?).无论如何,我的问题是:用户可以重载纯虚函数吗?

class Base
{
public:
 Base();
 virtual ~Base();
 virtual void foo(int,double)=0;
};

class Derived:
public Base
{
 private:
  // methods
 public:
 Derived();
 virtual ~Derived();
 virtual void foo(int, double, double); //this doesn't work
 };
Run Code Online (Sandbox Code Playgroud)

解决方案可能是:

 virtual void foo(int,double,double=0)=0;
Run Code Online (Sandbox Code Playgroud)

在基类但它是非常有限的.你有什么想法?

c++ oop design-patterns overloading pure-virtual

6
推荐指数
1
解决办法
2万
查看次数

标签 统计

c++ ×1

design-patterns ×1

oop ×1

overloading ×1

pure-virtual ×1