我正在爲遊戲製作一個Gui Api。用戶可以始終在窗口小部件上使用繼承並覆蓋,但我想要回調。我想用一個模板回調系統:模板化多態回調是一個好主意嗎?
所以如果他們想有一個他們從一個版本的模板回調基地mouseargs的繼承鼠標:
所以基本是這樣的:
template <typename T>
class AguiEventCallback {
public:
virtual void callback(AguiWidget* sender, T arg) = 0;
};
將模板與多態這樣混合是一個好主意嗎?我會更好地爲每個需要的類型(鼠標,鍵盤,遊戲手柄等)創建回調函數嗎?
謝謝
我認爲你最好爲每個相關事件創建回調接口。很難說什麼是一個好的解決方案(有各種各樣的活動方案,每個發明者大概認爲這個特定的方案是最好的)。但是對於參數類型的模板可能不會給你帶來任何東西(如果參數的數量不是1呢?)。乾杯, – 2010-11-12 05:07:56