当前位置: 首页 > news >正文

有什么推荐的网站一键生成logo免费网站

有什么推荐的网站,一键生成logo免费网站,贵州建设工程信息网官网,动画网站模板目录 一、foreach()二、while()三、break() 与 continue() 作为一个编程语言&#xff0c;CMake也少不了循环流程控制&#xff0c;他提供两种循环foreach() 和 while()。 一、foreach() 基本语法&#xff1a; foreach(<loop_var> <items>)<commands> endfo…

目录

    • 一、foreach()
    • 二、while()
    • 三、break() 与 continue()

作为一个编程语言,CMake也少不了循环流程控制,他提供两种循环foreach()while()

一、foreach()

基本语法:

foreach(<loop_var> <items>)<commands>
endforeach()

其中<items> 可以是由分号或空格分隔的项目列表,也可以是一个列表变量。每次迭代,<loop_var> 将被赋值为当前项目的值。

set(item1 a)
set(item2 b)
set(item3 c)
set(item4 d)
foreach(var ${item1} ${item2} ${item3} ${item4})message("var = ${var}")
endforeach()
----------------
var = a
var = b
var = c
var = d
var = eset(myList 1 2 3 4)
foreach(var ${myList})message("var = ${var}")
endforeach()
----------------
var = 1
var = 2
var = 3
var = 4

foreach() 还有一些进阶的用法:

  •   foreach(<loop_var> RANGE <stop>)
    

    使用 <stop> 指定迭代范围(<stop> > 0),相当于有一个迭代变量i,迭代范围为 [0, <stop>]

    foreach(var RANGE 5)message("var = ${var}")
    endforeach()
    ----------------
    var = 0
    var = 1
    var = 2
    var = 3
    var = 4
    var = 5
    
  •   foreach(<loop_var> RANGE <start> <stop> [<step>])
    

    指定迭代范围的开始(<start>)和结束(<stop>),并可选指定步长(<step>)。

    foreach(var RANGE 2 10 2)message("var = ${var}")
    endforeach()
    ----------------
    var = 2
    var = 4
    var = 6
    var = 8
    var = 10
    
  •   foreach(<loop_var> IN [LISTS [<lists>]] [ITEMS [<items>]])
    

    它和foreach(<loop_var> <items>)的用法基本一样,唯一不同的是,用LISTS指定列表后不需要用 ${}对列表进行取值。

    set(myList 1 2 3 4)
    foreach(var IN LISTS myList)message("var = ${var}")
    endforeach()
    ----------------
    var = 1
    var = 2
    var = 3
    var = 4
    
  •   foreach(<loop_var>... IN ZIP_LISTS <lists>)
    

    CMake 3.17引入

    这个用法可以并行遍历多个列表,可以发现<loop_var>后面有... ,所以他可以传入多个变量以接受多个列表的遍历,传入多个变量时,变量的数量应该和列表的数量相同。

    但如果只传入一个变量,将会把对应列表的元素存入到 <loop_var>_N 中,如下:

    set(myList0 a b c d)
    set(myList1 1 2 3 4)# 传入多个变量
    foreach(var0 var1 IN ZIP_LISTS myList0 myList1)message("var0 = ${var0}, var1 = ${var1}")
    endforeach()
    ----------------
    var1 = a, var2 = 1
    var1 = b, var2 = 2
    var1 = c, var2 = 3
    var1 = d, var2 = 4# 传入一个变量
    set(myList0 a b c d)
    set(myList1 1 2 3 4)
    foreach(var IN ZIP_LISTS myList0 myList1)message("var_0 = ${var_0}, var_1 = ${var_1}")
    endforeach()
    ----------------
    var_0 = a, var_1 = 1
    var_0 = b, var_1 = 2
    var_0 = c, var_1 = 3
    var_0 = d, var_1 = 4
    

二、while()

基本语法:

while(<condition>)<commands>
endwhile()

如果 <condition> 为真,则执行循环,示例如下:(列表操作详见CMake列表 - list)

list(LENGTH myList listLen)
while(listLen GREATER 0)message("myList = ${myList}")list(POP_FRONT myList)list(LENGTH myList listLen)
endwhile()
----------------
myList = 1;2;3;4
myList = 2;3;4
myList = 3;4
myList = 4

三、break() 与 continue()

与绝大多数编程语言一样,CMake也可以通过 break() 跳出循环,通过 continue() 结束本次循环并继续下次循环。

set(myList 1 2 3 4 5 6 7)
foreach(var IN LISTS myList)math(EXPR expr ${var}%2)if(expr EQUAL 0)continue()endif()if(${var} GREATER 5)break()endif()message("var = ${var}")
endforeach()
----------------
var = 1
var = 3
var = 5
http://www.yayakq.cn/news/297939/

相关文章:

  • 将网页加入可信站点秦皇岛市建设路小学网站
  • 杭州市网站制作甘肃网站建设方案及案例
  • 湖南网站制作做外贸网站市场
  • 外贸网站制作要求公司策划方案
  • 旅游电子商务网站开发方案wordpress只显示纯文字
  • 手把手教建设网站外贸自建网站
  • 如何将网站和域名绑定wordpress模板如何管理
  • 广东省建设厅网站可以查怎么用腾讯云主机建设网站
  • 网站建设费用应按几年摊销网站建设做的人多吗
  • 浙江交工宏途交通建设有限公司网站360建筑网电脑版
  • 有哪些好的做网站公司好泰安网站建设制作电话号码
  • dw网站建设步骤岳麓区网站建设
  • wordpress构建自己的网站做亚马逊有哪些站外折扣网站
  • 什么网站会更有浏览量重庆建站网站企业
  • 怎样做科普视频网站网络系统安全原则
  • 微网站页面网站维护外包合同
  • 珠海手机网站建设费用网站推广的六种方式
  • 金乡网站建设哪家好购物网站开发的背景
  • 做渔家乐哪个网站最好爱空间装修公司口碑怎么样
  • 常州孟河镇建设工程交易网站做网站的职业规划
  • 织梦网站404怎么做用手机怎么制作软件
  • 无为做网站科技设计公司网站模板
  • 企业网站备案名称窍门中科建声公司简介
  • 东莞市公租房申请网站-建设网html主页设计
  • 莱芜在线董事长seo网站设计就业前景
  • 网站专题优化wordpress外链包装
  • 实训课建设网站步骤wordpress dux主题5.0
  • 做dj音叉网站平台wordpress群发工具
  • c2c网站开发成本网站备案阿里云流程
  • 仿站吧企业展厅数字多媒体