CMakeLists.txt语法规则:foreach 循环基本用法

一. 简介

cmake 中除了 if 条件判断之外,还支持循环语句,包括 foreach()循环、while()循环。
本文学习 CMakeLists.txt语法中的循环语句。
CMakeLists.txt语法中 有两种 循环实现方式:foreach循环与 while循环。

二. CMakeLists.txt语法规则:循环语句之foreach 循环

本文主要学习 foreach循环。

1. foreach 基本用法

foreach 循环的基本用法如下所示:

复制代码
foreach(loop_var arg1 arg2 ...)
 command1(args ...)
 command2(args ...)
 ...
endforeach(loop_var)

endforeach 括号中的 <loop_var> 可写可不写,如果写了,就必须和 foreach 中的<loop_var>一致。
参数 loop_var 是一个循环变量,循环过程中会将参数列表中的变量依次赋值给他,类似于 C 语言 for 循 环中经常使用的变量 i 。

复制代码
# foreach 循环测试
foreach(loop_var A B C D)
 message("${loop_var}")
endforeach()

打印信息为:

复制代码
A
B
C
D

使用 foreach 可以编译一个列表中的所有元素,如下所示:

复制代码
# foreach 循环测试
set(my_list hello world china)
foreach(loop_var ${my_list})
 message("${loop_var}")
endforeach()

打印信息如下:

下一篇文章继续学习 foreach循环,主要学习 foreach循环的关键字。

相关推荐
0xDevNull16 小时前
Linux切换JDK版本详细教程
linux
进击的丸子16 小时前
虹软人脸服务器版SDK(Linux/ARM Pro)多线程调用及性能优化
linux·数据库·后端
Johny_Zhao2 天前
OpenClaw安装部署教程
linux·人工智能·ai·云计算·系统运维·openclaw
chlk1234 天前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑4 天前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件4 天前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
深紫色的三北六号4 天前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash4 天前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
哈基咪怎么可能是AI5 天前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
十日十行5 天前
Linux和window共享文件夹
linux