QT学习笔记(一)——Helloworld

一、调试的基本方法:

  • Log调试法

——在代码中加入一定的打印语句

——打印程序状态和关键变量的值

  • 断点调试法:

——在开发环境中的对应代码行加上断点

——当程序运行到断点行时,程序暂停运行

——需要时刻加上条件断点,当条件满足才暂停程序的运行

二、Qt Creator工程管理

  • 2.1 一个Qt Creator工程包含不同类型的文件

——.pro项目描述文件:是核心文件

——.pro.user 用户配置描述文件:自动生成

——.h头文件

——.cpp源文件

——.ui界面描述文件

——资源文件(图片,音频等)

  • 2.2 .pro项目描述文件——其本质是Makefile文件

  1. #-------------------------------------------------
  2. #
  3. # Project created by QtCreator 2018-07-30T20:02:33
  4. #
  5. #-------------------------------------------------
  6. QT += core gui
  7. QT += multimedia
  8. QT += multimediawidgets //声明本项目中要用到的模块:core模块,gui模块,multimedia模块等
  9. greaterThan(QT_MAJOR_VERSION, 4): QT += widgets//说明当前使用的Qt主版本要大于4;QT += widgets:告诉qt还需要一个widgets模块
  10. TARGET = test_capture //说明最后生成的可执行程序名
  11. TEMPLATE = app //可执行文件的合适.exe
  12. SOURCES += main.cpp test_capture.cpp //源文件说明
  13. HEADERS += test_capture.h //头文件说明
  14. FORMS += test_capture.ui //说明界面描述文件
  • 2.3 项目文件

一般来说,项目文件中的描述都使用相对路径,而相对路径是相对于项目文件本身而言,Qt Creator将项目文件作为目标文件。

注:

1、Qt Creature在打开项目文件的同时会生成.pro.user文件

2、.pro.user文件包含一些与Qt相关的本地配置信息

3、当需要在不同计算机之间移动项目源码时,建议删除.pro.user文件

三、工程中的概念

  • 构建(build)

——对项目中的所有文件进行编译,最终生成可执行程序

  • Debug版

——可以进行程序调试的构建版本

——可执行程序中包含调试信息,运行效率不高

  • Release版

——最终发布的应用程序构建版本

——无调试信息,运行效率高

注:在开发大型项目时,要经常进行release验证,防止debug没有问题时release出现问题

QT学习笔记(一)——Helloworld的更多相关文章

  1. qt学习笔记(五) QGraphicsPixmapItem与QGraphicsScene的编程实例 图标拖动渐变效果

    应大家的要求,还是把完整的project文件贴出来,大家省点事:http://www.kuaipan.cn/file/id_48923272389086450.htm 先看看执行效果,我用的群创7寸屏 ...

  2. Spring MVC 学习笔记一 HelloWorld

    Spring MVC 学习笔记一 HelloWorld Spring MVC 的使用可以按照以下步骤进行(使用Eclipse): 加入JAR包 在web.xml中配置DispatcherServlet ...

  3. MOOS学习笔记2——HelloWorld回调

    MOOS学习笔记2--HelloWorld回调 例程 #include "MOOS/libMOOS/Comms/MOOSAsyncCommClient.h" bool OnConn ...

  4. MOOS学习笔记1——HelloWorld

    MOOS学习笔记1--HelloWorld 例程 /* * @功能:通讯客户端的最简单程序,向MOOSDB发送名为"Greeting" * 数据"Hello", ...

  5. Qt学习笔记-Widget布局管理

    Qt学习笔记4-Widget布局管理       以<C++ GUI Programming with Qt 4, Second Edition>为参考 实例:查找对话框 包含三个文件,f ...

  6. qt学习笔记(七)之数据库简介(所有支持数据库类型的列表)

    笔者最近用Qt写公司的考勤机.本来要求是要基于frameBuffer下用自己开发的easyGUI来进行上层应用开发,但是考虑到easyGUI提供的接口不是很多,就考虑用Qt来开发,顺带练练手. 废话不 ...

  7. Qt学习笔记(1) hello world

    Qt的简介: Qt是一个跨平台的C++ GUI库实现,原本只是以为它只提供一些图形接口,看来我还是低估了它,采用文档Qt学习之路2开始学习,不知道这个文档是不是有点老了,管他呢,先了解下. 搭建环境: ...

  8. Qt学习笔记(2)-利用StackWidget实现选项卡式页面

    学习笔记第二篇,利用Qt实现选项卡式的页面,效果如图1.1-图1.3所示.程序实现的功能是通过点击状态栏实现不同页面的切换,实际上Qt中自带有Tab选项卡式的控件,本文利用StackWidge实现类似 ...

  9. 【Qt学习笔记】Qt+VS2010的配置

    http://blog.csdn.net/jocyln9026/article/details/8575218 关于Qt Qt是1991年由Trolltech公司开发的一个跨平台的C++图形用户界面应 ...

随机推荐

  1. SparkStreaming使用mapWithState时,设置timeout()无法生效问题解决方案

    前言 当我在测试SparkStreaming的状态操作mapWithState算子时,当我们设置timeout(3s)的时候,3s过后数据还是不会过期,不对此key进行操作,等到30s左右才会清除过期 ...

  2. Unity 背包系统的完整实现(基于MVC框架思想)

    前言: 项目源码上传GitHub:Unity-knapsack 背包系统: 背包系统是游戏中非常重要的元素,几乎每一款游戏都有背包系统,我们使用背包系统可以完成装备栏的数据管理,商店物体的数据管理等等 ...

  3. 关于ArrayList 中子方法 -- contains 疑惑解决

    写之前先看下 ArrayList 子函数 contains 的Api 怎么介绍: boolean contains(Object o)           如果此列表中包含指定的元素,则返回 true ...

  4. Leedcode算法专题训练(栈和队列)

    1. 用栈实现队列 232. Implement Queue using Stacks (Easy) Leetcode / 力扣 class MyQueue { Stack<Integer> ...

  5. 聊聊 OAuth 2.0 的 token expire_in 使用

    问题背景 有同学私信问了这样的问题,访问 pig4cloud 的演示环境 查看登录请求 network 返回报文如下: { "access_token":"16d3579 ...

  6. 【笔记】《Redis设计与实现》chapter11 AOF持久化

    11.1 AOF持久化的实现 命令追加 当AOF持久化处于开启状态时,服务器执行完一个写命令之后,会以协议格式将被执行的写明了追加到服务器状态的aof_buf缓冲区 struct redisServe ...

  7. Java中的绑定

    1 前言 做了一次笔试题,发现了一题问答题,是关于Java绑定的: 当时做的时候是完全不会的... 于是这里补上一篇Java绑定的文章. 2 绑定 首先来了解一下绑定的概念.绑定是指一个方法的调用与方 ...

  8. JDBC_10_使用Statement实现升序和降序

    使用Statement数据库操作对象实现升序和降序 Statement可以使用在需要SQL语句拼接的情况下,因为在这样的情况下如果使用PreparedStatement就会给需要拼接的某个SQL关键字 ...

  9. 基于excel的接口自动化测试框架:支持参数化、关联等

    1. 框架结构说明 2. 框架代码实现 action 包  case_action.py business_process 包 main_process.py util 包 global_var.py ...

  10. 以 DEBUG 方式深入理解线程的底层运行原理

    说到线程的底层运行原理,想必各位也应该知道我们今天不可避免的要讲到 JVM 了.其实大家明白了 Java 的运行时数据区域,也就明白了线程的底层原理,不过把这些东西明明白白写在纸面上的,网络上的文章并 ...