您的位置:首页 > 编程语言 > Qt开发

QT中的PRI文件

2016-01-08 17:18 363 查看
QT中的PRI文件,是由PRO文件更改后缀实现的,目前我找到2个关于PRI的文档:
http://blog.csdn.net/qinpanke/article/details/22199857#t6 http://blog.csdn.net/redpetallsg/article/details/7041936 http://blog.csdn.net/hpwzd/article/details/7562539 - 这篇文章说明通过 PRI可以对其它工程进行编译

前者主要是实现PRI文件对不同目录下面的文件的引用

后者对PRI文件中的一些变量实现了程序控制(控制DEBUG信息是否显示)

下面是对前者的一些代码说明:(目前还没有弄懂,弄懂了再来写)

下面是对后者的一些代码说明:

//test.pro文件中这样定义:

include(devinfo.pri) 这一句我也没有加,我是先在工程下面用PRO新建了一个PRI文件,然后把这个PRI文件加到工程中,它自动就有了这句,include(devinfo.pri) 中间还可以指定PRI的路径,比如 include(../qextserialport/src/devinfo.pri)

还有下面一句:

OTHER_FILES += \

devinfo.pri

//devinfo.pri文件中这样定义:可以通过“#”来实现预编译

# Debug output from waveform generation

#DEFINES += LOG_WAVEFORM -- 这句是否注释可以控制调试信息是否输出

//utils.h中这样定义:

#ifndef UTILS_H

#define UTILS_H

#include <QDebug>

class NullDebug

{

public:

template <typename T>

NullDebug& operator<<(const T&) { return *this; }

};

inline NullDebug nullDebug() { return NullDebug(); }

#ifdef LOG_WAVEFORM

# define WAVEFORM_DEBUG qDebug()

#else

# define WAVEFORM_DEBUG nullDebug()

#endif

#endif // UTILS_H

//代码中如下使用

WAVEFORM_DEBUG << "Waveform::paintEvent"

<< "windowPosition" << m_windowPosition

<< "windowLength" << m_windowLength;

这样就可以通过pri文件来实现工程中是否需要输出debug信息了

在更改了PRI文件后,需要对工程清除,执行QMAKE、构建、再运行,才会看到效果。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: