Linuxkiss
    首页 Linux C/C++ C++面试 Qt答疑 Qml中文手册 Qt CMake Python 工具
Linuxkiss
www.linuxkiss.com 你可以精通一门IT技术
  1. 首页
  2. Qt qmake
  3. 正文

qmake语言描述--替换功能(Replace Functions)

2020年09月10日 8点热度 0人点赞

qmake语言描述--替换功能

qmake提供了一组内置函数,允许处理变量的内容。这些函数处理提供给它们的参数,结果返回一个值或一列值。要给一个变量赋值结果,在这种类型的函数中使用$$操作符,就像将一个变量的内容赋值给另一个变量一样:

HEADERS = model.h
HEADERS += $$OTHER_HEADERS
HEADERS = $$unique(HEADERS)

此类函数应在赋值的右侧使用(即,作为操作数)。

您可以定义自己的函数来处理变量的内容,如下所示:

defineReplace(functionName){
    #function code
}

下面的示例函数将变量名作为唯一参数,使用内置的eval()函数从变量中提取值列表,并编译文件列表:

defineReplace(headersAndSources) {
    variable = $$1
    names = $$eval($$variable)
    headers =
    sources =

    for(name, names) {
        header = $${name}.h
        exists($$header) {
            headers += $$header
        }
        source = $${name}.cpp
        exists($$source) {
            sources += $$source
        }
    }
    return($$headers $$sources)
}

英文原文地址:https://doc.qt.io/qt-5/qmake-language.html#replace-functions

标签: qmake Qt
最后更新:2020年09月10日

Leo

保持饥渴的专注,追求最佳的品质

点赞
< 上一篇
下一篇 >
关注公众号

日历
2021年4月
一 二 三 四 五 六 日
« 2月    
 1234
567891011
12131415161718
19202122232425
2627282930  
最新 热点 随机
最新 热点 随机
windows中出现"无法解析的外部符号"到底是什么原因 Qt5中lambda表达式用法,非常实用 warning: class 'InterFace' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator 无法解析的外部符号 "public: static struct QMetaObject const Windows下Qt代码出现的错误总结 QT Creator如何在创建项目的时候,头文件和cpp文件的首字母默认大写
qmake高级用法--安装文件(Installing Files) 组合模式_设计模式(Qt开发环境) qmake中的测试函数isEqual,lessThan(variablename, value),load(feature) qmake高级用法--库的依赖关系(Library Dependencies) 6.2.2 RPM命令管理[笔记]–安装,升级,卸载 QML资源加载和网络透明度(Resource Loading and Network Transparency)
标签聚合
C++ Linux Qt qmake C/C++面试 qml中文文档 openCv qml中文手册

COPYRIGHT © 2020 Linuxkiss. ALL RIGHTS RESERVED.