[转]在Qt工程文件中根据不同版本号使用不同源码

众所周知,qmake里是不提供
#if (QT_VERSION >= QT_VERSION_CHECK(4, 5, 0))
// …
#endif
这种语法的

qmake的语法是

条件{
…执行的动作1…
}else{
…执行的动作2…
}

所以如果要执行根据版本控制的代码可以用

 
  
ExpandedBlockStart.gif ContractedBlock.gif greaterThan(QT_MAJOR_VERSION,  4 ) | equals(QT_MAJOR_VERSION, 4 ) {

ExpandedSubBlockStart.gifContractedSubBlock.gif    greaterThan(QT_MINOR_VERSION, 
5)|equals(QT_MINOR_VERSION, 5){
    message(
"bla,bla,bla .")
    }

ExpandedBlockStart.gifContractedBlock.gif}
else {
    message(
"pla,pla,pla .")
}

不过需要注意的是,greaterThan和equals是在qmake代码里没有公布的,详细需要看qmake的源代码
qt/qmake/project.cpp

116 if(!qmake_test_functions) {
117 qmake_test_functions = new QMap;
118 qmake_test_functions->insert("requires", T_REQUIRES);
119 qmake_test_functions->insert("greaterThan", T_GREATERTHAN);
120 qmake_test_functions->insert("lessThan", T_LESSTHAN);
121 qmake_test_functions->insert("equals", T_EQUALS);
122 qmake_test_functions->insert("isEqual", T_EQUALS);

转载于:https://www.cnblogs.com/godson/archive/2009/10/17/1585095.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值