C 언어 와 디자인 모델 (공장 방법 모델)

글 목록
한 마디 로 이해 하 다.
예.
한 마디 로 이해 하 다
공장 에서 모든 제품 은 자신의 생 성 함 수 를 실현 하고 공장 은 함수 포인터 (가상 함수) 의 장점 만 제공 합 니 다. 공장 과 모든 제품 간 의 결합 을 해결 하고 매번 제품 을 증가 할 때마다 공장 내부 코드 를 수정 할 필요 가 없습니다.
예시
#include 
using namespace std;

class Product
{
public:
    virtual void Show() = 0;
};

class ProductA : public Product
{
public:
    void Show()
    {
        cout<< "I'm ProductA"<CreateProduct();
    productA->Show();

    Factory *factoryB = new FactoryB ();
    Product *productB = factoryB->CreateProduct();
    productB->Show();

    if (factoryA != NULL)
    {
        delete factoryA;
        factoryA = NULL;
    }

    if (productA != NULL)
    {
        delete productA;
        productA = NULL;
    }

    if (factoryB != NULL)
    {
        delete factoryB;
        factoryB = NULL;
    }

    if (productB != NULL)
    {
        delete productB;
        productB = NULL;
    }
    return 0;
}

좋은 웹페이지 즐겨찾기