当前位置: 首页 > news >正文

专业网站建设比较好网站关键词优化费用

专业网站建设比较好,网站关键词优化费用,dw做的个人网站,手机网站 pc网站模板QMake 使用概述一、概述二、简单开始三、使应用程序可调试1. 添加平台特定的源文件2. 如果文件不存在,停止qmake3. 检查多个条件一、概述 本教程教你qmake的基础知识。qmake 其实就是一个自动化编译的流程控制文件,也是Qt程序的生成makefile的工具&…

QMake 使用概述

  • 一、概述
  • 二、简单开始
  • 三、使应用程序可调试
    • 1. 添加平台特定的源文件
    • 2. 如果文件不存在,停止qmake
    • 3. 检查多个条件

一、概述

本教程教你qmake的基础知识。qmake 其实就是一个自动化编译的流程控制文件,也是Qt程序的生成makefile的工具,qmake 其实就是来解析 Qt Pro文件的一个程序,基本上我们主要还是通过 编写 pro 工程文件,然后调用 qmake 命令来生成Makefile, 最后生成可执行文件的过程。qmake 其实就是和 cmake 一样的,生成一个Makefile 的工具。只是qmake 是qt 提供的一个跨平台 生成Makefile的软件,我一般也是用 qmake 多些,因为更简单些。

二、简单开始

让我们假设您刚刚完成了应用程序的基本实现,并创建了以下文件:

  • hello.cpp
  • hello.h
  • main.cpp

我们需要做的第一件事是添加告诉 qmake 作为开发项目一部分的源文件和头文件的行。

即是通过设置一些变量来完成的。

我们首先将源文件添加到项目文件中。为此,您需要使用 SOURCES 变量。只需用 SOURCES += 开始新一行,并在其后加上hello.cpp。你应该有这样的东西:

SOURCES += hello.cpp

我们可以对项目中的每个源文件重复这一步骤,直到得到如下结果:

SOURCES += hello.cpp
SOURCES += main.cpp

如果你更喜欢使用类似make的语法,你可以使用换行转义,就像这样:

SOURCES = hello.cpp \main.cpp

既然源文件已经在项目文件中列出,那么必须添加头文件。添加这些文件的方式与源文件完全相同,只是我们使用的变量名是 HEADERS

一旦你这样做了,你的项目文件应该看起来像这样:

HEADERS += hello.h
SOURCES += hello.cpp
SOURCES += main.cpp

生成的目标名称将自动设置。它与项目文件名相同,但具有适合于平台的后缀。例如,如果项目文件名为 hello.pro 在Windows上目标是hello.exe,在Unix上目标是hello。

如果你想使用不同的名称,你可以在项目文件中通过 TARGET 来设置这个可执行文件名叫 helloworld :

TARGET = helloworld

完成的项目文件应该是这样的:

HEADERS += hello.h
SOURCES += hello.cpp
SOURCES += main.cpp

下面生成这些的命令我们可以了解就行,基本上我们都是在GUI的Qt Creator IDE下开发,我们只需要点击 运行 按钮就能运行出结果啦。

现在可以使用qmake为应用程序生成Makefile。在命令行中,在项目目录中,键入以下命令:

qmake -o Makefile hello.pro

然后根据你使用的编译器输入make或nmake。

对于Visual Studio用户,qmake还可以生成Visual Studio项目文件。例如:

qmake -tp vc hello.pro

三、使应用程序可调试

应用程序的发布版本不包含任何调试符号或其他调试信息。在开发过程中,生成具有相关信息的应用程序的调试版本是很有用的。通过向项目文件中的 CONFIG 变量添加 debug ,可以轻松实现这一点。

例如:

CONFIG += debug
HEADERS += hello.h
SOURCES += hello.cpp
SOURCES += main.cpp

像以前一样使用qmake生成Makefile。现在,在调试环境中运行应用程序时,您将获得有关应用程序的有用信息。

1. 添加平台特定的源文件

经过几个小时的编码之后,您可能已经开始了应用程序中特定于平台的部分,并决定将依赖于平台的代码分开。

现在有两个新文件要包含到项目文件中:helloin .cpp和hellounix.cpp。我们不能仅仅将这些文件添加到SOURCES变量中,因为这会将两个文件都放在Makefile中。因此,我们在这里需要做的是使用一个作用域,它将根据我们为哪个平台构建而被处理。

为Windows添加平台相关文件的简单作用域如下所示:

win32 {SOURCES += hellowin.cpp
}

当构建Windows时,qmake将helloin .cpp添加到源文件列表中。在为其他平台构建时,qmake会忽略它。现在剩下要做的就是为特定于unix的文件创建一个作用域。
当你这样做了,你的项目文件应该看起来像这样:

CONFIG += debug
HEADERS += hello.h
SOURCES += hello.cpp
SOURCES += main.cpp# windows
win32 {SOURCES += hellowin.cpp
}# 类unix 包含 Linux
unix {SOURCES += hellounix.cpp
}

这个就是条件编译一样,也会像以前一样使用qmake生成Makefile。

2. 如果文件不存在,停止qmake

如果某个文件不存在,您可能不想创建Makefile。我们可以使用exists()函数来检查文件是否存在。我们可以使用error()函数停止qmake的处理。这与作用域的工作方式相同。只需将作用域条件替换为函数。一个名为main.cpp的文件的检查是这样的:

!exists( main.cpp ) {error( "No main.cpp file found" )
}

!符号用于否定测试。也就是说,如果文件存在,exists(main.cpp)为真,如果文件不存在,!exists(main.cpp)为真。

CONFIG += debug
HEADERS += hello.h
SOURCES += hello.cpp
SOURCES += main.cpp
win32 {SOURCES += hellowin.cpp
}
unix {SOURCES += hellounix.cpp
}
!exists( main.cpp ) {error( "No main.cpp file found" )
}

像之前一样使用qmake来生成makefile。如果暂时重命名main.cpp,将在编译输出区看到消息,qmake将停止处理。

3. 检查多个条件

假设你使用的是Windows,你希望在命令行中运行应用程序时能够通过qDebug()看到语句输出。要查看输出,您必须使用适当的控制台设置构建应用程序。在Windows上,我们可以轻松地将console放在配置行中,在Makefile中包含此设置。然而,假设我们只想在Windows上运行且debug已经在配置行中时添加配置行。这需要使用两个嵌套作用域。首先创建一个作用域,然后在其中创建另一个作用域。将需要处理的设置放在第二个作用域中,如下所示:

win32 {debug {CONFIG += console}}

嵌套的作用域可以用冒号连接在一起,因此最终的项目文件如下所示:

CONFIG += debug
HEADERS += hello.h
SOURCES += hello.cpp
SOURCES += main.cppwin32 {SOURCES += hellowin.cpp
}unix {SOURCES += hellounix.cpp
}!exists( main.cpp ) {error( "No main.cpp file found" )
}win32:debug {CONFIG += console
}
http://www.shuangfujiaoyu.com/news/55310.html

相关文章:

  • 去哪个网站做试用好选择宁波seo优化公司
  • 做网站和做新媒体运营百度推广哪家做的最好
  • 建网站代理淘宝直通车
  • 美食网站开发开题报告郑州seo技术博客
  • 温州建设集团网站seo工作
  • 女人网上量体做衣网站网址百度刷排名
  • 购物平台网站建设微信软文是什么意思
  • 视频上传网站源码代刷网站推广免费
  • 国外网站拼邮需要怎么做产品推广外包
  • 网站建设能挣钱企业营销推广
  • 做网站的骗术域名注册网站有哪些
  • 商城网站怎么做内链推广普通话演讲稿
  • 税务系统网站建设规定潍坊网站模板建站
  • 购物网站建设与开发seo诊断a5
  • 做一普通网站需要多少钱蚂蚁链接bt链接
  • 网站建设免费书互联网销售平台有哪些
  • 网站在线客服模板百度网页版官网
  • 广告公司 名称seo服务深圳
  • 宿迁市住房和城乡建设局老网站网络推广哪个好
  • 深圳CSS3网站建设价格凌哥seo
  • 网站链接加密东莞网站建设快速排名
  • 单位网站建设框架自媒体十大平台
  • 湖南企业建站系统信息安徽seo网络推广
  • 百度做网站怎么联系线上产品推广方案
  • wordpress进不了后台新泰网站seo
  • 自己做的网站只能打开一个链接无人在线观看高清视频单曲直播
  • 新浪网站怎么做推广企业网站怎么注册
  • 网页设计多少钱一个页面安卓优化大师hd
  • 佛山微网站建设网络广告营销成功案例
  • 电子商务网站建设需求分析企业如何注册自己的网站