6. 变量的高级主题(上)

Posted Alone0710

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了6. 变量的高级主题(上)相关的知识,希望对你有一定的参考价值。

1. 变量值的替换

  1. 使用指定字符(串)替换变量值中的后缀字符(串)
  2. 语法格式:$(var:a=b) 或 $(var:a=b)
    替换表达式中不能有任何的空格
    make中支持使用${ }对变量进行取值

src := a.cc b.cc c.cc
obj := $(src:cc=o)
test :
(tab)@echo “obj => $(obj)”

2. 变量的模式替换

  1. 使用%保留变量值中的指定字符,替换其他字符
  2. 语法格式:$(var:a%b=x%y)或${var:a%b=x%y}
    替换表达式中不能有任何的空格
    make中支持使用${}对变量进行取值

src := a1b.c a2b.c a3b.c
obj := $(src:a%b.c=x%y)
test:
(tab)@echo “obj => $(obj)”

3. 规则中的模式替换

OBJS := func.o main.o
$(OBJS) : %.o : %.c
(tab)gcc -o $@ -c $^

等同于以下代码:

func.o : func.c
(tab)gcc -o $@ -c $^
main.o : main.c
(tab)gcc -o $@ -c $^

好处:大工程中可以显现出来,比较简洁,容易维护大工程

在这里插入图片描述
在这里插入图片描述

4. 命令行变量

在这里插入图片描述
变量的值以命令行为准,可以临时改变值。

5. override关键字

  1. 用于指示makefile中定义的变量不能被覆盖
  2. 变量的定义和赋值都需要使用override关键字
    在这里插入图片描述
    在这里插入图片描述

6. 小结

在这里插入图片描述
在这里插入图片描述

以上是关于6. 变量的高级主题(上)的主要内容,如果未能解决你的问题,请参考以下文章

第7课 - 变量的高级主题(下)

变量的高级主题

7. 高级变量主题(下)

使用 Composer 安装高级 Wordpress 主题

Python高级应用程序设计任务要求

高级特性题