Q
基於規則的設計
1
A
回答
2
除了策略之外,我還會使用單例模式。 一種可能的實現(雖然這是相當開放的,如果你想要一套靈活的規則,你768,16使用另一個類的「規則」的實體。然而,這種方式更容易理解):
class Rules {
public:
virtual bool rule_1(Data *) = 0;
// ...
virtual bool rule_n(Data *) = 0;
static Rules * getRules()
{
// The only place in which to change the rule set
if (ruleSet == NULL) ruleSet = new Rules_September2010();
return ruleSet;
}
protected:
Rules();
static Rules * ruleSet;
};
class Rules_August2010 : public Rules {
public:
bool rule_1(Data *);
bool rule_n(Data *);
};
class Rules_September2010 : public Rules {
public:
bool rule_1(Data *);
bool rule_n(Data *);
};
中當然,這是標題的指示。實施文件丟失。希望這可以幫助。
0
您可以使用一些規則引擎。在java中有很多規則引擎,我不知道abt C++。 This post may help you。
3
我首先想到的是Gof'Design Pattern,叫做Strategy。
您將規則編碼到具體策略對象中。 所以你可以有一個特定的具體策略對象在時間上發生變化。 但最好的是改變具體的戰略對象,以反映新的規則,恕我直言。
維基百科鏈接在C++中有一個示例。但是,如果你對設計模式不熟悉,或者需要進一步的解釋,就問一下。
+0
戰略模式+1 – 2010-08-18 12:58:24
相關問題
- 1. 重寫基地基於規則的PHP
- 2. 從事實形成規則。基於規則的編程
- 3. Prolog的基於規則的系統
- 4. 什麼是基於規則的算法?
- 5. 基於C++的規則引擎
- 6. 基於規則的文件解析
- 7. 基於規則(基於數據驅動或配置)條件評估和計算
- 8. ASP.NET MVC中基於表單的設計的規範資源?
- 9. ADOBE DTM - 基於活動CSS創建基於事件的規則
- 10. 基於主鍵的計算列規範
- 11. 基於組件的設計
- 12. 需要幫助設計用於SQL選擇的規則表
- 13. 將規則應用於事實的設計模式和算法
- 14. CakePHP3濾波基於自定義規則
- 15. 郵件路由基於規則
- 16. laravel - 基於droplist修改驗證規則
- 17. IIS基於長度PARAM重寫規則
- 18. Windows Workflow Foundation是否包含基於推理的規則引擎,如基於流的規則引擎?
- 19. XSD設計 - 一個或多個規則
- 20. 用於設計mmo的良好python庫?基於演員設計
- 21. shared_ptr基於設計問題
- 22. 推基於API設計
- 23. 訪問規則:允許基於訪問規則的只讀/讀寫訪問
- 24. 累計css規則
- 25. 設計類結構映射關係數據庫的基本規則是什麼?
- 26. 計數唯一值基於列準則
- 27. 基於Agent/Actor的併發設計的設計模式
- 28. Java基於策略的設計
- 29. 基於Flex的UML設計器
- 30. 設計「基於相關性」的搜索?
規則可以及時更改是否意味着實時? – DumbCoder 2010-08-18 11:23:10
不一定,但聽到關於實時的想法可能會很好。 – metdos 2010-08-18 11:32:43