【转载】Makefile中4种赋值运算符(=、:=、?=、+=)

版权声明:本文为CSDN博主「正在起飞的蜗牛」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_42031299/article/details/119720236

 

 

前言

这四种赋值运算符在Makefile中的作用都是赋值,但是有一些细节上的差异,如果不是经常解决Makefile的编写,很容易混淆,特在此总结以便以后查阅。

1."="

用"="对变量进行赋值时,解析该变量的时候,该变量的值等于最后一次赋值时的值,而不是当前位置时该变量的值。所以你看变量引用的值时不能只往前面看,还要往后面看。

2.":="

用":=“来赋值的,则是就地直接解析,只用往前看即可,和我们在C语言里的”="逻辑上是一样的。

3."?="

该变量没有被赋值过则执行本条赋值语句,如果被赋值过则忽略本次赋值。

4."+="

对变量进行接续赋值,作用就是将本次的赋值追加到原来的赋值后面。

 
posted @ 2022-03-20 09:37  张志伟122  阅读(296)  评论(0编辑  收藏  举报