前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >qmake自定义函数

qmake自定义函数

作者头像
Qt君
发布2019-09-02 16:44:48
6990
发布2019-09-02 16:44:48
举报
文章被收录于专栏:跟Qt君学编程跟Qt君学编程

使用qmake编写构建步骤时,如果较为复杂或重复的行为可以使用函数来实现。

1. 语法

  • 使用defineReplace函数定义func函数
代码语言:javascript
复制
defineReplace(func)
{
}
  • func传参
代码语言:javascript
复制
$$func(11, 22, 33)
  • 函数返回值
    1. 无论是返回什么值都需要括号。
    2. 可以忽略不写。
代码语言:javascript
复制
return (Hello world!)
  • func捕获参数($$1$$N)
代码语言:javascript
复制
defineReplace(func)
{
	ARG1 = $$1
	ARG2 = $$2
	ARG3 = $$3
}

2. 示例

代码语言:javascript
复制
defineReplace(func1) {
    return ($$replace(1, /, \\))
}

defineReplace(func2) {
    return ($$1)
}

result1 = $$func1($$PWD)
result2 = $$func2($$PWD)
message($$result1)
message($$result2)
---------------------------
输出:
Project MESSAGE: C:\Users\Documents\
Project MESSAGE: C:/Users/Documents/

3. 关于变量是否带$$的问题

  • 在示例中有的时这样写$$1,有的直接就是1,它们区别是前者是获取变量的值,而后者是变量名字。
  • $$replace()函数输入的是变量名字,而message($$result1)$$result1是获取变量的值,因为message函数输入的是变量的值。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-08-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Qt君 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 语法
  • 2. 示例
  • 3. 关于变量是否带$$的问题
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档