与工厂模式(详见:一文搞懂怎么用C语言实现抽象工厂)相比,工厂模式不考虑对象部件组装过程,直接生成一个对象,强调的是结果。而建造者模式先构建对象的每一个部件,然后再统一按照一定方法组建成一个对象,强调的是过程。 建造者模式将复杂产品的构建过程封装分解在不同的方法中,使得创建过程非常清晰。它隔离了复杂产品对...
intmain(void){House_t*house=NULL;IBuilder_t*buidler=NULL;//指向公寓建造者,修建公寓buidler=(IBuilder_t*)constructor_flat_builder();buidler->make_door(buidler);//修建公寓的门buidler->make_floor(buidler);//修建公寓的地板buidler->make_wall(buidler);//修建公寓的墙buidler->make_window(buidler);/...