我正在创建一个具有许多不同选项的类库以进行可能的自定义。例如,您可以设计您的类以便它可以执行 FeatureX(),或者您可以设计您的类以便它可以执行 FeatureY()。
在正常情况下,您只需创建一个接口 IFeatureX 和一个名为 FeatureX 的纯虚方法,以及另一个接口 IFeatureY 和一个称为 FeatureY 的纯虚方法。如果一个类同时具有 FeatureX 和 FeatureY,它可以从两者继承,没问题。
我的问题是,如果一个函数/方法需要一个可以同时执行 FeatureX() 和 FeatureY() 的对象怎么办?我如何表达一个类型,最好用 C++,但 Java 的答案也可以帮助确保 FeatureX 和 FeatureY 都可用?
我是否要创建另一个从 IFeatureX 和 IFeatureY 继承的接口 IFeatureXY?好的...如果只有两个功能,我可以摆脱这个。但是如果有说... 10 个功能,可能的接口数量就会变得庞大。
有没有一种简单的方法可以做到这一点?我尝试使用 C++ 模板和委托来解决问题,但并没有走得太远。我希望有一个简单的解决方案,并且可能有一个我只是忽略了。
我感谢你们的任何帮助和建议。
谢谢。