设计模式-工厂模式-简单工厂-抽象工厂

发布时间 2024-01-12 14:16:14作者: starc再起航

Makefile

TARGET = factory
CC=g++

DIR = $(shell pwd)
DIR_OBJ = $(DIR)/obj
DIR_SRC = $(DIR)/src
DIR_INC = $(DIR)/inc

SRC = $(wildcard $(DIR_SRC)/*.cpp)
SRC_NO_DIR = $(notdir $(SRC))
SRC_OBJ = $(patsubst %cpp, %o, $(SRC_NO_DIR))

INC = -I$(DIR_INC) \

FLAG = -g

all:$(TARGET) 
	@echo "=======  all make successs  ======="

$(TARGET):$(addprefix $(DIR_OBJ)/, $(SRC_OBJ))
	$(CC) -o $@ $^ $(INC) $(FLAG)
	@echo "======= Linux make successs ======="

$(DIR_OBJ)/%.o:$(DIR_SRC)/%.cpp
	@mkdir -p $(DIR_OBJ)
	$(CC) -c $< -o $@ $(INC) $(FLAG)

.PHONY:clean
clean:
	-rm -rf $(DIR_OBJ)
	-rm $(TARGET) 
	@echo "======= make clean success ======="

build.sh

#!/bin/sh

make clean
make

C++版本

简单工厂

C版本