簡單工廠模式,使用工廠的創建產品函數(參數爲要創建的產品)創建產品。
main
{
定義工廠指針 *pSimpleHumanFactory
定義產品指針 並使用工廠指針創建產品A賦值給產品指針 IHuman *pYellowHuman = pSimpleHumanFactory->CreateHuman("YellowHuman");
使用產品指針調用產品功能函數 pYellowHuman->Cry();
}
第二種分類:模板工廠模式
模板工廠模式,先定義產品模板工廠(也就是此工廠只能生產此類產品)。然後調用工廠的創建產品函數創建產品
main
{
定義產品模板工廠 StandardHumanFactory<YellowHuman> standardHumanFactory;
調用工廠的創建產品函數創建產品,賦值給產品指針 IHuman *pYellowHuman = standardHumanFactory.CreateHuman();
使用產品指針調用產品功能函數 pYellowHuman->Cry();
}
第三種分類:工廠方法模式
工廠方法模式,先定義某種產品工廠指針(也就是一種工廠只生產一種產品,產品和工廠都有對應的接口類)。然後調用工廠的創建產品函數創建產品
main
{
定義產品模板工廠 IHumanFactory *pHumanFactory = new YellowHumanFactory();
調用工廠的創建產品函數創建產品,賦值給產品指針 IHuman *pYellowHuman = standardHumanFactory.CreateHuman();
使用產品指針調用產品功能函數 pYellowHuman->Cry();
}