C语言设计模式(1.1建造者模式、1.2工厂模式、1.3抽象工厂模式)

建造者模式一般都是创建一个产品,不仅要把产品创建出来,还要关心这个产品的组成细节,组成过程。从代码上看,建造者模式在建造产品时,这个产品有很多方法,建造者模式会根据这些相同方法但是不同执行顺序建造出不同组成细节的产品。

工厂模式也是创建一个产品,注重的是把这个产品创建出来就行,不关心产品的组成部分。从代码上看,工厂模式为一个方法,用这个方法直接生产出产品。

建造者为一个产品的不同组成的抽象,工厂为一个工厂的不同产品的抽象。而抽象工厂为一个工厂集合的不同工厂的抽象。

工厂模式:

有一个生产电脑的工厂,它能生产acer电脑,也能生产苹果电脑。如下:

typedef struct _Computer
{
    int type;
    void (*create_computer)(struct _Computer*);
}Computer;

就像上面说的,现在有acer电脑,那也有苹果电脑,我们该怎么做呢? 

void assemble_lowend_computer( Computer *computer )
{
    assert( NULL != computer );
    printf( "This is a lowend 
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值