Makefile的四种赋值运算符

Makefile有四种赋值运算符:简单赋值(:=)、递归赋值(=)、条件赋值(?=)和追加赋值(+=)

1. 简单赋值( :=

作用:覆盖之前的值。若在多次简单赋值之间将变量(A)赋值给了其他变量(B),后续该变量(A)的变化不会影响其他变量(B)的变化。

例:

A::=5

B:=A

A:=6

B?-->5

​​​​​​​2. 递归赋值( =

作用:覆盖之前的值。与简单赋值不同的是,若在多次简单赋值之间将变量(A)赋值给了其他变量(B),后续该变量(A)的变化会影响其他变量(B)的变化。

例:

A=5

B=A

A=6

B?-->6

​​​​​​​3. 条件赋值( ?=

作用:如果变量之前未赋值则将对该变量进行赋值,否则赋值无效。若在多次简单赋值之间将变量(A)赋值给了其他变量(B),后续该变量(A)的变化不会影响其他变量(B)的变化。

​​​​​​​4. 追加赋值( +=

作用:追加赋值,并用空格隔开。若在多次简单赋值之间将变量(A)赋值给了其他变量(B),后续该变量(A)的变化会影响其他变量(B)的变化。

​​​​​​​

相关推荐
hunterandroid23 分钟前
HarmonyOS WebSocket 实战:断线重连、心跳保活与连接状态机设计
前端
hunterandroid28 分钟前
StateFlow 与 SharedFlow 的边界:状态与事件的正确建模
android·前端
心念科技35 分钟前
1、搜索表单 xnSearch(基于:心念后台,后端 Java 21 + Spring Boot 4 + Spring Cloud,前端提供 ReactVue3+TS、Vue3+JS、Vue2+JS
前端
计算机魔术师1 小时前
Dwarkesh Patel 对 OpenAI/Hugging Face 事件的爆款解读被指危险误导
前端
自进化Agent智能体2 小时前
Hermes GitHub PR 审查 —— 自动化代码评审
前端
涛涛ing4 小时前
OpenAI Astra 泄露:零样本生成 3D 网页,前端开发者慌了吗?
前端
ssshooter4 小时前
现在网页都能提供 MCP 了?!
前端·人工智能·程序员
杉氧4 小时前
状态管理变迁史:为什么我们放弃了 Redux 选择 Zustand?
android·前端·react native
cidy_984 小时前
OpenCode 手动配置火山方舟 Agent Plan 教程
前端
鹏多多5 小时前
PC 网站接入微信登录,这 10 个坑我替你踩完了!
前端·javascript·vue.js