我正在創建一個類庫,其中包含許多不同的選項以實現可能的自定義。例如,您可以設計自己的類,以便它可以執行FeatureX(),或者您可以設計自己的類,以便它可以執行FeatureY()。C++/Java繼承與授權與對等
在正常情況下,你會簡單地創建一個名爲FeatureX純虛方法,並與所謂FeatureY純虛方法的另一個接口IFeatureY接口IFeatureX。如果一個類同時擁有FeatureX和FeatureY,它可以同時繼承,沒問題。
我的問題是,如果一個函數/方法需要能夠同時執行FeatureX()和FeatureY()的對象?我如何用C++表達類型,但是Java中的答案也可以幫助確保FeatureX和FeatureY都可用?
難道我創建一個從IFeatureX和IFeatureY繼承了另一個接口IFeatureXY?好吧...如果只有兩個特點,我可以逃脫這一點。但是,如果說... 10個功能,可能的接口數量變得很大。
有沒有簡單的方法來做到這一點?我試着用C++模板和委託來解決問題,但並沒有太多。我希望有一個簡單的解決方案,可能有一個我只是忽略了。
我很感謝你們的幫助和建議。
感謝。
謝謝,這與我的想法類似,但看起來更加健壯。 – Kranar 2009-04-08 03:53:00