• 预编译加速编译

QT也可以像VS那样使用预编译头文件来加速编译器的编译速度。首先在.pro文件中加入:

CONFIG += precompiled_header

然后定义需要预编译的头文件:

PRECOMPILED_HEADER = pch.h

其中pch.h头文件即为自定义的预编译头文件。

  • 指定临时文件生成目录,使项目文件夹更干净

QT默认情况下把所有的编译中间文件都生成到debug和release文件夹里。可以在.pro文件中加入:

MOC_DIR = tmp/moc

RCC_DIR = tmp/rcc

UI_DIR = tmp/ui

OBJECTS_DIR = tmp/obj

这样,编译时生成的临时文件就按不同类型分类放到项目下的tmp文件夹中了。

http://www.cnblogs.com/codingmylife/archive/2010/04/06/1704995.html

------------------------------------------------------------------------------------------------------------

情景一:今天在使用Qt设计界面的时候发现的一个问题,每修改一处代码,就要清理工程、重新构建才可以看到最新的效果

项目文件少还好,文件多了,每修改一下就要重新构建一次,特别浪费时间!

情景二:由于vc2013开始可以使用"#pragma execution_character_set("UTF-8")"来解决UTF-8编码问题,可是这句话放哪里呢?网上查一查,清一色的都说放在main函数前面,好吧,我放了,但是发现还是会存在乱码的问题。其实网上那些朋友搞错了一个概念,这个命令是在编译时产生作用的,而不是运行时,你放main函数前面根本就没用!你要放在编译器编译的第一个文件中头部,但是问题是你不确定编译器到底从哪个文件开始编译。。。

基于以上两个不便之处,预编译头文件的作用就显现出来了!

第一,把你项目中用到的标准库都放在这里,以后每次修改代码重新编译时就不用苦苦等待了。

第二,把#pragma等指令放在预编译头文件里可以保证编译器在编译项目文件的时候相关指令已经产生作用了!

使用方法很简单,只要在工程的.pro文件中加入一句即可,xxx.h是你的头文件名

PRECOMPILED_HEADER = xxx.h

成功后会在构建目录下多出一个工程名字的.pch文件(Windows平台)

http://m.blog.csdn.net/article/details?id=25006373

http://blog.csdn.net/aqtata/article/details/25006373

预编译加速编译(precompiled_header),指定临时文件生成目录,使项目文件夹更干净(MOC_DIR,RCC_DIR, UI_DIR, OBJECTS_DIR),#pragma execution_character_set("UTF-8")"这个命令是在编译时产生作用的,而不是运行时的更多相关文章

  1. git clone 指定的单个目录或文件夹

    git clone 指定的单个目录或文件夹 针对自己的项目 方法一 基于sparse clone变通方法 创建一个空仓库 拉取远程仓库信息 开启 sparse clone 设置过滤 更新仓库 创建空仓 ...

  2. Laravel 指定日志生成目录

    1.在config/logging.php 中, 创建自定义频道 2.使用时指定频道

  3. Makefile中的$(addprefix),添加前缀,指定目标生成目录

    先给大家看段Makefile的代码吧: INCLUDE_DIR=usr/java/jdk1..0_25/include \ usr/java/jdk1..0_25/include/linux INCL ...

  4. iOS 运行时runtime控制私有变量以及私有方法

    OC是运行时语言,只有在程序运行时,才会去确定对象的类型,并调用类与对象相应的方法.利用runtime机制让我们可以在程序运行时动态修改类.对象中的所有属性.方法,就算是私有方法以及私有属性都是可以动 ...

  5. 【原】iOS动态性(二):运行时runtime初探(强制获取并修改私有变量,强制增加及修改私有方法等)

    OC是运行时语言,只有在程序运行时,才会去确定对象的类型,并调用类与对象相应的方法.利用runtime机制让我们可以在程序运行时动态修改类.对象中的所有属性.方法,就算是私有方法以及私有属性都是可以动 ...

  6. iOS动态性 运行时runtime初探(强制获取并修改私有变量,强制增加及修改私有方法等)

    借助前辈的力量综合一下资料. OC是运行时语言,只有在程序运行时,才会去确定对象的类型,并调用类与对象相应的方法.利用runtime机制让我们可以在程序运行时动态修改类.对象中的所有属性.方法,就算是 ...

  7. xmake v2.6.1 发布,使用 Lua5.4 运行时,Rust 和 C++ 混合编译支持

    xmake 是一个基于 Lua 的轻量级跨平台构建工具,使用 xmake.lua 维护项目构建,相比 makefile/CMakeLists.txt,配置语法更加简洁直观,对新手非常友好,短时间内就能 ...

  8. Java面试题问与答——编译时与运行时

    在开发和设计的时候,我们需要考虑编译时,运行时以及构建时这三个概念.理解这几个概念可以更好地帮助你去了解一些基本的原理.下面是初学者晋级中级水平需要知道的一些问题. Q.下面的代码片段中,行A和行B所 ...

  9. Netsharp快速入门(之5) 基础档案(之D 实体建模 生成实体代码、同步数据库、配置插件运行时)

    作者:秋时 杨昶   时间:2014-02-15  转载须说明出处 3.3.1  同步数据库并生成dll文件 1.在基础档案和销售管理项目上右击,选择同步数据库结构来创建数据库表 2. 在基础档案项目 ...

随机推荐

  1. In partitioned databases, trading some consistency for availability can lead to dramatic improvements in scalability.

    In partitioned databases, trading some consistency for availability can lead to dramatic improvement ...

  2. 设置m_pszAppName值的做法

    作者:朱金灿 来源:http://blog.csdn.net/clever101 CWinApp::m_pszAppName用于指定应用程序的名字.昨天这样修改它的值: m_pszAppName = ...

  3. Android--在Android应用中愉快地写C/C++代码(转)

    1 前言 一直想在android层面写c进程,然后java可以与c进程交互,以前在android源码中想玩就可以直接在init.rc中加上交叉编译好的c进程就可以了,而在ide中,也就是ndk编译后各 ...

  4. solr+ Eclipse 4.3+ tomcat 7.5 +winds7(一)

    这种方法是我自己依据对tomcat运行项目流程和solr的运行流程来自己弄的,所以有点麻烦,请到原地址查看心血谢谢:http://blog.csdn.net/chunlei_zhang/article ...

  5. 工作流管理平台Airflow

    Airflow 1. 引言 Airflow是Airbnb开源的一个用Python写就的工作流管理平台(workflow management platform).在前一篇文章中,介绍了如何用Cront ...

  6. OpenCV 图像白平衡算法(相机自动白平衡)

    彩色相机内部有三个CCD电子耦合元件,分别用来感受红绿蓝三中颜色的光线,默认情况下,三个颜色的感光电路信号的放大比例是1:1:1的.在理想的拍摄环境下,纯白色的RGB分量按照1:1:1的比例放大之后, ...

  7. (转)react 使用 ref 报错 ,[eslint] Using string literals in ref attributes is deprecated. (react/no-string-refs)

    原文地址:https://www.cnblogs.com/gangerdai/p/7396226.html react 项目中给指定元素加事件,使用到 react 的 ref 属性,Eslink 报错 ...

  8. Feature extraction - sklearn文本特征提取

    http://blog.csdn.net/pipisorry/article/details/41957763 文本特征提取 词袋(Bag of Words)表征 文本分析是机器学习算法的主要应用领域 ...

  9. 使用 Capistrano 和写作 Ruby 迭代边缘部署

    想边自己写ruby代码,边部署随时能够到处查看,heroku域名又不友好,速度在国内又慢.于是乎想起来capistrano,于是学起 ... capistrano 一点入门认知 https://www ...

  10. @RequestBody标记的形参,与APP接口不能直接用

    用ajax请求传JSON串,在服务端形参用@RequestBody标记可以直接转为对应的对象: 在APP调用该接口时,服务端用@RequestBody标记无法转为对应对象,将形参改为String类型, ...