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循环的关键字。

相关推荐
网易独家音乐人Mike Zhou29 分钟前
【Linux应用】交叉编译环境配置,以及最简单粗暴的环境移植(直接从目标板上复制)
linux·stm32·mcu·物联网·嵌入式·iot
饭来_2 小时前
配置 RDP 远程桌面协议连接ubuntu服务器桌面
linux·运维·服务器
李菠菜2 小时前
Redis主从/哨兵/集群离线部署指南
linux·运维·redis
zyx没烦恼2 小时前
线程池&&单例模式
linux·开发语言·c++·单例模式
古德赖可可2 小时前
linux的例行性工作(at)
linux·运维·服务器
猪猪侠|ZZXia2 小时前
# 家庭网络IPv6地址的一些知识
linux·运维·服务器·网络·智能路由器
前进的程序员3 小时前
CentOS系统中MySQL安装步骤分享
linux·mysql·centos
小王努力学编程3 小时前
【Linux网络编程】应用层协议HTTP(实现一个简单的http服务)
linux·服务器·网络·c++·网络协议·学习·http
AI小小怪4 小时前
Linux下编译并打包MNN项目迁移至其他设备
linux·opencv·mnn·mtcnn
JhonKI4 小时前
【Linux网络】TCP服务中IOService应用与实现
linux·网络·tcp/ip