Cmake中的list


原鏈接:https://www.baidu.com/link?url=zta-qlffdvP_GuX0fUZMRZPaIT8YD8SyYyxtRr8nXu6TSppgL20nHeGFYRW0fT6Zb9Sd11i-VSUY8V2-bVuzpa&wd=&eqid=f4316a7a00002c8d000000025992a738

用途:提供一些列表操作

list(LENGTH <list><output variable>)
  list(GET <list> <elementindex> [<element index> ...]
       <output variable>)
  list(APPEND <list><element> [<element> ...])
  list(FIND <list> <value><output variable>)
  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>)

LENGTH返回列表的長度

GET返回列表中指定下標的元素

APPEND添加新元素到列表中

INSERT 將新元素插入到列表中指定的位置

REMOVE_ITEM從列表中刪除某個元素

REMOVE_AT從列表中刪除指定下標的元素

REMOVE_DUPLICATES從列表中刪除重復的元素

REVERSE 將列表的內容實地反轉,改變的是列表本身,而不是其副本

SORT 將列表按字母順序實地排序,改變的是列表本身,而不是其副本

列表的子命令APPEND, INSERT, REMOVE_AT, REMOVE_ITEM,REMOVE_DUPLICATES, REVERSE以及SORT在當前的CMake變量域創建一些新值。與SET命令類似,即使列表本身是在父域中定義的,LIST命令也只會在當前域創建新的變量值,為了將這些操作的結果向上傳遞,需要通過SET PARENT_SCOPE, SET CACHE INTERNAL或其他值域擴展的方法。

注意:cmake中的列表是以分號隔開的一組字符串。可以使用set命令創建一個列表。例如:set(var a b c d e)創建了一個這樣的列表:a;b;c;d;e。 set(var “a b c d e”)創建了一個字符串或只有一個元素的列表。

當指定索引值時,<element index>為大於或等於0的值。它從列表的開始處索引,0代表列表的第一個元素。如果<element index>為小於或等於-1的值,它從列表的結尾處索引,-1代表列表的最后一個元素。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM