字符串和列表
了解 CMake 如何区分列表和普通字符串非常重要。当你写:
set(VAR "a b c")
你创建一个值为 a b c
的字符串。但是当你在没有引号的情况下写这行时:
set(VAR a b c)
你可以创建一个包含三个项目的列表 :a
,b
和 c
。
非列表变量实际上也是列表(单个元素)。
可以使用 list()
命令操作列表,该命令允许连接列表,搜索列表,访问任意元素等( list()
的文档 )。
有点令人困惑,列表也是一个字符串。这条线
set(VAR a b c)
相当于
set(VAR "a;b;c")
因此,要连接列表,还可以使用 set()
命令:
set(NEW_LIST "${OLD_LIST1};${OLD_LIST2})"