zoukankan      html  css  js  c++  java
  • qmake常用语法四

    关键字:常用函数

    这里列出的不全,最好还是看Qt的帮助主题:qmake Function Reference

    1、contains( variablename, value ):
      如果value存在于一个被叫做variablename的变量的值的列表中,那么成功,否则失败。例如:

      contains( CONFIG, thread ) {
        DEFINES += QT_THREAD_SUPPORT
      }

      如果thread存在于CONFIG变量的值的列表中时,那么QT_THREAD_SUPPORT将会被加入到DEFINES变量的值的列表中。

    2、count( variablename, number ):
      如果number与一个被叫做variablename的变量的值的数量一致,那么成功,否则失败。例如:

      count( DEFINES, 5 ) {
        CONFIG += debug
      }

    3、dirname(file):

      返回指定文件的目录名称。例如:

       FILE = /etc/X11R6/XF86Config

       DIRNAME = $$dirname(FILE) #/etc/X11R6

    4、error( string ):

      这个函数输出所给定的字符串,然后会使qmake退出。例如:

      error(An error has occurred in the configuration process.)

    5、exists( filename ):

      如果指定文件存在,那么函数成功,否则失败。例如:

      exists( /local/qt/qmake/main.cpp ) {
        SOURCES += main.cpp
      }

      如果/local/qt/qmake/main.cpp存在,那么main.cpp将会被添加到源文件列表中。

      注意可以不用考虑平台使用“/”作为目录的分隔符。

    6、find( variablename, substr ):

      这将会放置variablename中所有匹配substr的值。substr也可以是正则表达式,而因此将被匹配。

      MY_VAR = one two three four
      MY_VAR2 = $$join(MY_VAR, " -L", -L) -Lfive
      MY_VAR3 = $$member(MY_VAR, 2) $$find(MY_VAR, t.*)

      MY_VAR2将会包含“-Lone -Ltwo -Lthree -Lfour -Lfive”,并且MYVAR3将会包含“three two three”。

    7、include(filename):

      包含文件。

    8、infile( filename, var, val ):

      如果filename文件(当它被qmake自己解析时)包含一个值为val的变量var,那么这个函数将会返回成功。你也可以不传递第三个参数(val),这时函数将只测试文件中是否分配有这样一个变量var。

    9、isEmpty( variablename ):

      这和使用count( variablename, 0 )是一样的。如果叫做variablename的变量没有任何元素,函数返回成功否则失败。例如:

      isEmpty( CONFIG ) {
        CONFIG += qt warn_on debug
      }

    10、join( variablename, glue, before, after ):

      这将会在variablename的各个值中间加入glue。如果这个变量的值为非空,那么就会在值的前面加一个前缀before和一个后缀after。只有variablename是必须的字段,其它默认情况下为空串。如果你需要在glue、before或者after中使用空格的话,你必须提供(引用?)它们。

    11、member( variablename, position ):

      返回函数的值列表中指定位置的值。如果变量值列表并不存在指定的位置,这将会返回一个空串。variablename是唯一必须的字段,如果没有指定位置,则默认为列表中的第一个值(position默认为0)。

    12、message( string ):

      这个函数只是简单地在控制台上输出消息。

          message( "This is a message" )

      文本“This is a message”被输出到控制台上并且对于项目文件的处理将会继续进行。

    13、replace(string, old_string, new_string):

      用讲string中的old_string用new_string代替,例如:

      MESSAGE = This is a tent.

      message($$replace(MESSAGE, tent, test))

      prints the message:

      This is a test.

    14、system( command ):

      特定指令被执行并且如果它返回一个1的退出值,那么函数成功否则失败。例如:

      system( ls /bin ) {
        SOURCES += bin/main.cpp
        HEADERS += bin/main.h
      }

      所以如果命令ls /bin返回1,那么bin/main.cpp将被添加到源文件列表中并且bin/main.h将被添加到头文件列表中。

    15、warning(string):

      这个函数一直返回成功,并且会输出指定字符串给用户,跟message是同义词。

      

  • 相关阅读:
    PLC 控制系统资源
    .net core 控制台程序生成EXE
    EF Core 日志跟踪sql语句
    Oracle 设置自启动
    数据库批量插入数据
    字符串面试题系列之六:在字符串中删除特定的字符
    字符串面试题系列之五:删除字符串空格
    字符串面试题系列之四:字符串匹配二
    字符串面试题系列之三:左旋转字符串
    字符串面试题系列之二:连续最长数字串
  • 原文地址:https://www.cnblogs.com/yuohoo/p/2956533.html
Copyright © 2011-2022 走看看