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)的变化。

​​​​​​​

相关推荐
Lank_M9 小时前
AI 放大后的图更清楚,但它不能当原图入库
前端
Swot9 小时前
SvelteKit 数据流研究:`+page.js` 和 `+page.server.js` 到底谁在跑,数据又去了哪儿
前端·后端
用户4147679304159 小时前
Windows 触摸屏上 Swiper 轮播滑不动?可能是内部滚动容器抢走了你的手势
前端
张明君644519 小时前
从一个 Referer 引发的 403,到 SSR 服务失稳:Astro 流式渲染与缓存失效分析
前端
律宏阔9 小时前
微信小程序 + Taro + TDesign 去掉 [&&&],让普通 Tailwind 类接管局部样式
前端·微信小程序·taro
费曼学习法9 小时前
把 3 个内部服务封装成 MCP Server 的工程复盘:进程模型、超时与错误契约
前端
Captaincc9 小时前
转译:《软件工程师现在该怎么办》
前端·后端·ai编程
天才熊猫君9 小时前
给 Vue 的 reactive 套 Proxy,为什么响应式会失灵?
前端·javascript
htzyl2069 小时前
别急着上微前端:从 6 个场景倒推 Module Federation 2.0 与 qiankun 2.x 的选型
前端·微服务
verohh9 小时前
Cesium 多业务页面切换的资源隔离与架构设计:单 Viewer 复用还是多实例隔离
前端