CMake 中的list操作
来源:互联网 发布:卡片战斗先导者g爱知 编辑:程序博客网 时间:2024/06/01 08:21
Cmake 中定义了一系列的数组操作,使用方法如下
- list(INSERT <list> <element_index> <element> [<element> ...])
- list(REMOVE_ITEM <list> <value> [<value> ...])
- list(REMOVE_AT <list> <index> [<index> ...])
- list(REMOVE_DUPLICATES <list>)
- list(REVERSE <list>)
- list(SORT <list>)
- list(APPEND <list> <element> [<element> ...])
- list(GET <list> <element index> [<element index> ...] <output variable>)
- list(LENGTH <list> <output variable>)
INSERT
cmake_minimum_required(VERSION 2.8)set(mylist aaa)list(APPEND mylist bbb ccc)MESSAGE("${mylist}")list(LENGTH mylist ll)#insert with indexlist(INSERT mylist 2 xxx)MESSAGE("${mylist}")
---------output----------
aaa;bbb;ccc
aaa;bbb;xxx;ccc
REMOVE_ITEM
cmake_minimum_required(VERSION 2.8)set(mylist aaa)list(APPEND mylist bbb ccc)MESSAGE("${mylist}")list(LENGTH mylist ll)#remove item from listlist(REMOVE_ITEM mylist ccc)MESSAGE("${mylist}")
---------output----------
aaa;bbb;ccc
aaa;bbb
aaa;bbb
REMOVE_AT
cmake_minimum_required(VERSION 2.8)set(mylist aaa)list(APPEND mylist bbb ccc)MESSAGE("${mylist}")list(LENGTH mylist ll)#remove item from listlist(REMOVE_ITEM mylist 2)MESSAGE("${mylist}")
---------output----------
aaa;bbb;ccc
aaa;bbb
aaa;bbb
REMOVE_DUPLICATES
cmake_minimum_required(VERSION 2.8)set(mylist aaa)list(APPEND mylist bbb ccc ccc bbb aaa)MESSAGE("${mylist}")list(LENGTH mylist ll)#REMOVE_DUPLICATESlist(REMOVE_DUPLICATES mylist)MESSAGE("${mylist}")
---------output----------
aaa;bbb;ccc;ccc;bbb;aaaaaa;bbb;ccc
REVERSE
cmake_minimum_required(VERSION 2.8)set(mylist aaa bbb ccc)MESSAGE("mylist: ${mylist}")list(REVERSE mylist)MESSAGE("mylist: ${mylist}")
---------output----------
mylist: aaa;bbb;ccc
mylist: ccc;bbb;aaa
mylist: ccc;bbb;aaa
SORT
cmake_minimum_required(VERSION 2.8)set(mylist xxx yyy zzz aaa bbb ccc)MESSAGE("mylist: ${mylist}")list(SORT mylist)MESSAGE("mylist: ${mylist}")
---------output----------
mylist: xxx;yyy;zzz;aaa;bbb;ccc
mylist: aaa;bbb;ccc;xxx;yyy;zzz
mylist: aaa;bbb;ccc;xxx;yyy;zzz
APPEND
cmake_minimum_required(VERSION 2.8)set(mylist aaa bbb ccc)MESSAGE("mylist: ${mylist}")list(APPEND mylist xxx yyy zzz)MESSAGE("mylist: ${mylist}")set(mylist2 111 222 333)MESSAGE("mylist2: ${mylist2}")list(APPEND mylist ${mylist2})MESSAGE("mylist: ${mylist}")
---------output----------
mylist: aaa;bbb;ccc
mylist: aaa;bbb;ccc;xxx;yyy;zzz
mylist2: 111;222;333
mylist: aaa;bbb;ccc;xxx;yyy;zzz;111;222;333
mylist: aaa;bbb;ccc;xxx;yyy;zzz
mylist2: 111;222;333
mylist: aaa;bbb;ccc;xxx;yyy;zzz;111;222;333
这里的append有两种,第二种直接append数组的值,同样有效。
GET
cmake_minimum_required(VERSION 2.8)set(mylist xxx yyy zzz aaa bbb ccc)MESSAGE("mylist: ${mylist}")list(GET mylist 0 1 2 sublist)MESSAGE("mylist: ${sublist}")
---------output----------
mylist: xxx;yyy;zzz;aaa;bbb;ccc
mylist: xxx;yyy;zzz
mylist: xxx;yyy;zzz
LENGTH
cmake_minimum_required(VERSION 2.8)set(mylist xxx yyy zzz aaa bbb ccc)MESSAGE("mylist: ${mylist}")list(LENGTH mylist ll)MESSAGE("mylist: ${ll}")
---------output----------
mylist: xxx;yyy;zzz;aaa;bbb;ccc
mylist: 6
mylist: 6
0 0
- CMake 中的list操作
- CMake 中的字符串操作
- CMake list
- CMake中的字符串及文件操作
- CMake学习记录--list(列表操作命令)
- js 操作freemarker 中的list
- JS操作freemarker中的list
- Python中的基本list操作
- CMake命令之list
- CMake命令之list
- CMake之list
- cmake命令之list
- 关于Redis中的list常见的操作
- python中的list、dict、string基本操作
- python中的list实现CRUD操作
- cmake中的一些变量
- cmake 中的 commands
- cmake 中的 variables
- Android 了解intent
- Word Pattern pattern = "abba", str = "dog cat cat dog" should return true
- ubuntu系统下,windows虚拟机不能读取USB的问题解决
- hdu3410 单调队列
- 利用nginx搭建http和rtmp协议的流媒体服务器
- CMake 中的list操作
- 浅谈Git
- java synchronized 多线程 分析
- Google Volley使用之基础
- ListView分批加载数据
- SQL Server2012 创建数据库存储过程和VS2015 C#调用自己的存储过程
- OC-UI-004.纯代码编写按钮的简单方法
- 【Android Studio初级学习】Android Studio如何发布APK
- 用TC、按键、易语言接入百宝云开发注册码系统