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

​​​​​​​

相关推荐
海上彼尚9 小时前
Nodejs也能写Agent - 22.LangGraph篇 - 上下文工程
前端·javascript·人工智能·langchain·node.js
阳光是sunny10 小时前
LangGraph实战教程:预定义状态MessagesState与AgentState
前端·人工智能·后端
GuWenyue10 小时前
等AI回复卡顿到劝退?Vue3+DeepSeek流式输出实战,70行代码实现打字机效果
前端·人工智能·客户端
Jackson__10 小时前
AI Agent 的能力从哪里来?一文讲清后训练、上下文学习和外部能力
前端·agent·ai编程
默_笙10 小时前
🎉 AI 项目里为什么需要 BFF?因为我实在不想在前端处理二进制流
前端·javascript
Revolution6110 小时前
改一个订单筛选,为什么要在六个目录里来回找,前端项目目录到底要怎么拆
前端·前端工程化
阳光是sunny11 小时前
LangGraph高级教程:Multi Schema多状态管理详解
前端·人工智能·后端
mCell12 小时前
从 TodoList 到 Microsoft To Do:全栈工程师到底要管什么?
前端·编程语言·全栈
阳光是sunny12 小时前
LangGraph实战教程:状态管理与`graph.invoke`入参深度解析
前端·人工智能·后端