• Qt Creator中,include路径包含过程(或如何找到对应的头文件)


    转自:http://blog.csdn.net/lyc_daniel/article/details/12103189

     

    利用Qt Creator开发程序时,需要包含利用#include来添加头文件。

    大家都知道,#include <>用于包含标准库头文件,路径在安装软件的include文件夹下;#include ""用于包含用户自定义的,路径是在用户当前目录下(或自建工程目录下)。

    对于后者,路径比较直观,容易理解。如#include "lyc/daniel.h",路径在当前目录的lyc文件夹下。(文件包含是可以嵌套的。)

    下面重点追溯一下Qt的标准库头文件的路径包含情况。

    1.新建一个GUI工程,可以看到在mainwindow.h文件中有#include <QMainWindow>

    2.在Qt的include路径下,可以看到里面是文件夹,而不是文件,这是为什么呢?

    3.打开工程里的pro文件,便可知道已经包含了二级目录QtCore和QtGui

    即添加了include里的两个文件

    4.在include文件夹下搜索QMainWindow(注意不带.h),可以看到在includeQtGui目录下找到了QMainWindow

    5.用文本打开QMainWindow,可以看到

    6.再打开QtGui路径下的qmainwindow.h文件(与QMainWindow在同一路径)

    可以看到,路径发生了跳转,从当前路径往上跳两个路径,再从src文件下依次找到qmainwindow.h文件

    7.打开qmainwindow.h文件,可以看到

    至此,可以看出找到了目标头文件。

    在进行编译的时候,该文件内的代码会被拷贝到#include <QMainWindow>处

    举例:

    在头文件中QT项如果没有加network:

     

    在应用程序包含<QtNetwork>以及<QUdpSocket>等子类头文件,都会提示没有此文件;

  • 相关阅读:
    PHP一维数组转二维数组正则表达式
    PHP IDE选择标准
    PHP导出MySQL数据字典 Summer-Mysql-Dic
    PHP导入导出csv文件 Summer-CSV
    laravel学习
    php markdown 接口文档生成工具 SummerDoc
    AIX系统日志
    inotify+rsync实现实时同步
    shell数组应用
    Nginx缓存功能、防盗链、URL重写
  • 原文地址:https://www.cnblogs.com/lidabo/p/10974521.html
Copyright © 2020-2023  润新知