是否存在将"方法"与成员隔离的设计模式?

Jam*_*ond 1 c++ design-patterns

基本上,我希望有类似的东西:class DataProcessor {};

但是,在将来,我需要将DataProcessor的实例传递给其他一些函数,因为DataProcessor包含一些关键数据.

我想到的是将成员与方法分开:

class DataProcessorCore{};
class DataProcessor : public DataProcessorCore    {};
Run Code Online (Sandbox Code Playgroud)

这是完成这项工作的常用方法吗?或者有一些模式我可以适应我的想法?

非常感谢

Jef*_*ter 7

我不确定这是一种模式,我只想使用一个界面.

class DataProcessorCore {
   public virtual void doProcessing() = 0;

   // Any other virtual methods, but no implementation
};

class DataProcessor : public DataProcessorCore {
   // implement the methods
};
Run Code Online (Sandbox Code Playgroud)

现在任何只需要DataProcessor功能的东西都应该使用接口类而不是具体类.如果我理解正确,那么这就实现了方法与方法的分离.

  • "界面"*是*模式;-) (3认同)