CMakeLists.txt语法规则:foreach循环的关键字

一. 简介

前一篇文章学习了 CMakeLists.txt语法中 foreach循环的基本用法。文章如下:

CMakeLists.txt语法规则:foreach 循环基本用法-CSDN博客

本文继续 CMakeLists.txt语法中 foreach循环语句,主要学习 foreach循环中的关键字。

二. CMakeLists.txt语法规则:foreach循环语句的关键字

1. foreach 循环之 RANGE 关键字

用法如下所示:

复制代码
foreach(loop_var RANGE stop)
foreach(loop_var RANGE start stop [step])

对于第一种方式,循环会从 0 到指定的数字 stop,包含 stop,stop 不能为负数。

而对于第二种,循环从指定的数字 start 开始到 stop 结束,步长为 step,不过 step 参数是一个可选参数,如果不指定,默认 step=1;三个参数都不能为负数,而且 stop 不能比 start 小。

接下来我们进行测试,测试一:

复制代码
# foreach 循环测试
foreach(loop_var RANGE 4)
 message("${loop_var}")
endforeach()

打印信息如下:

测试二:

复制代码
# foreach 循环测试
foreach(loop_var RANGE 1 4 1)
message("${loop_var}")
endforeach() 

打印信息如下:

2. foreach 循环之 IN 关键字

用法如下:

复制代码
foreach(loop_var IN [LISTS [list1 [...]]]
 [ITEMS [item1 [...]]])

循环列表中的每一个元素,或者直接指定元素。
接下来进行测试,测试一:

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

打印信息如下:

测试二:

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

打印信息同上。

foreach循环暂时学习到这里。

相关推荐
NE_STOP1 天前
Vibe Coding -- Claude Code 的核心配置与常用命令
程序人生
Web3探索者1 天前
可视化服务器管理和传统命令行区别是什么?新手教程:Linux 运维到底该用图形界面还是 SSH 命令行?
linux·ssh
zylyehuo1 天前
Linux系统中网线与USB网络共享冲突
linux
Sokach10152 天前
Linux Shell 脚本从零到能用:一个新手的一天学习总结
linux
AlfredZhao3 天前
Docker 容器时区不对,`timedatectl` 不存在怎么办?
linux·timezone
zzzzzz3104 天前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql
XIAOHEZIcode4 天前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
A小辣椒6 天前
TShark:Wireshark CLI 功能
linux
A小辣椒6 天前
TShark:基础知识
linux
AlfredZhao7 天前
OCI 明明分配了 200G 系统盘,为什么 df 只看到 30G?
linux·oci