[C++][CMake][生成可执行文件][下]详细讲解

时间:2025-02-13 18:11:21
  • 获取list的长度
    • 语法
      list(LENGTH <list> <output variable>)
      
    • 参数
      • LENGTH:子命令LENGTH用于读取列表长度
      • <list>:当前操作的列表
      • <output variable>:新创建的变量,用于存储列表的长度
  • 读取列表中指定索引的的元素,可以指定多个索引
    • 语法
      list(GET <list> <element index> [<element index> ...] <output variable>)
      
    • 参数
      • <list>:当前操作的列表
      • <element index:列表元素的索引
        • 从0开始编号,索引0的元素为列表中的第一个元素
        • 索引也可以是负数,-1表示列表的最后一个元素,-2表示列表倒数第二个元素,以此类推
        • 当索引(不管是正还是负)超过列表的长度,运行会报错
      • <output variable>:新创建的变量,存储指定索引元素的返回结果,也是一个列表
  • 将列表中的元素用连接符(字符串)连接起来组成一个字符串
    • 语法
      list (JOIN <list> <glue> <output variable>)
      
    • 参数
      • <list>:当前操作的列表
      • <glue>:指定的连接符(字符串)
      • <output variable>:新创建的变量,存储返回的字符串
  • 查找列表是否存在指定的元素,若果未找到,返回-1
    • 语法
      list(FIND <list> <value> <output variable>)
      
    • 参数
      • <list>:当前操作的列表
      • <value>:需要在列表中搜索的元素
      • <output variable>:新创建的变量
        • 如果列表<list>中存在<value>,那么返回<value>在列表中的索引
        • 如果未找到则返回-1
  • 将元素追加到列表中
    list (APPEND <list> [<element> ...])
    
  • list中指定的位置插入若干元素
    list(INSERT <list> <element_index> <element> [<element> ...])
    
  • 将元素插入到列表的0索引位置
    list (PREPEND <list> [<element> ...])
    
  • 将列表中最后元素移除
    list (POP_BACK <list> [<out-var>...])
    
  • 将列表中第一个元素移除
    list (POP_FRONT <list> [<out-var>...])
    
  • 指定的元素从列表中移除
    list (REMOVE_ITEM <list> <value> [<value> ...])
    
  • 指定索引的元素从列表中移除
    list (REMOVE_AT <list> <index> [<index> ...])
    
  • 移除列表中的重复元素
    list (REMOVE_DUPLICATES <list>)
    
  • 列表翻转
    list(REVERSE <list>)
    
  • 列表排序
    • 语法
      list (SORT <list> [COMPARE <compare>] [CASE <case>] [ORDER <order>])
      
    • 参数
      • COMPARE:指定排序方法
        • STRING:按照字典序排序,为默认的排序方法
        • FILE_BASENAME:如果是一系列路径名,会使用basename进行排序
        • NATURAL:使用自然数顺序排序
      • CASE:指明是否大小写铭感
        • SENSITIVE:按照大小写敏感的方式进行排序,为默认值
        • INSENSITIVE:按照大小写不敏感的方式进行排序
      • ORDER:指明排序的顺序
        • ASCENDING:按照升序排序,为默认值
        • DESCENDING:按照降序排列