QT学习笔记(一)——Helloworld

一、调试的基本方法:

  • Log调试法

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

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

  • 断点调试法:

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

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

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

二、Qt Creator工程管理

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

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

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

——.h头文件

——.cpp源文件

——.ui界面描述文件

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

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

#-------------------------------------------------
#
# Project created by QtCreator 2018-07-30T20:02:33
#
#------------------------------------------------- QT += core gui
QT += multimedia
QT += multimediawidgets //声明本项目中要用到的模块:core模块,gui模块,multimedia模块等 greaterThan(QT_MAJOR_VERSION, 4): QT += widgets//说明当前使用的Qt主版本要大于4;QT += widgets:告诉qt还需要一个widgets模块 TARGET = test_capture //说明最后生成的可执行程序名
TEMPLATE = app //可执行文件的合适.exe SOURCES += main.cpp test_capture.cpp //源文件说明 HEADERS += test_capture.h //头文件说明 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. 201871030139-于泽浩 实验二 个人项目D{0-1} KP

    201871030139-于泽浩 实验二 个人项目D{0-1} KP 项目 内容 课程班级博客连接 2018级卓越班 这个作业要求连接 软件工程个人项目 我的课程学习目标 (1)掌握软件项目个人开发流 ...

  2. python基础(补充):lambda匿名函数,用了的,都说好!

    lambda函数又叫做"匿名函数".当你完成一件小工作时,直接使用该函数可以让你的工作得心应手. lambda函数介绍 在Python中,定义函数使用的是def关键字,但是通过la ...

  3. JavaWeb 补充(Cookie&JSP&Session)

    1. 会话技术     1. Cookie     2. Session 2. JSP:入门学习 会话技术 1. 会话:一次会话中包含多次请求和响应.     * 一次会话:浏览器第一次给服务器资源发 ...

  4. 7- MySQL结果数据处理与函数

    复习: 查询:select 列名 from 表 去重:distinct 排序:order by 列1 列2 排序方法:asc desc. 限定返回行数:limit n limit n,m 过滤:whe ...

  5. IOS Widget(3):SwiftUI开发小组件布局入门

    引言   经过上一篇文章,我们已经可以在桌面上展示出一个小组件出来了,你肯定想小试牛刀,动手改一改,那我们就从改小组件的布局做起吧.本文不会讲解Swift语法,如果是熟悉Flutter,Kotlin这 ...

  6. POJ 1386 欧拉路的判定

    题意:       给你n个单词,问你有没有一种排列方式可以所有单词的首部是相邻单词的尾部. 思路:       这个题目还挺基础的,就是个欧拉的判定,首先对于每一个单词,我们把他抽象成边,每个单词两 ...

  7. ART模式下基于dex2oat脱壳的原理分析

    本文博客地址:http://blog.csdn.net/qq1084283172/article/details/78513483 一般情况下,Android Dex文件在加载到内存之前需要先对dex ...

  8. hdu 5059 判断数字表示方式以及范围合法(int型之内)

    题意:       给你一个串和两个整数a,b,问你这个串表示的数字是否合法,并且在a,b之间, 和法的要求是无论是正数还是负数都没有前导0,并且注意 -0 是不合法的. 思路:       写了将近 ...

  9. c/c++ 指针函数 和 函数指针

    指针函数:返回指针类型的函数,定义方法如下: 类型标识符 *函数名(参数列表) 函数指针:指向函数入口地址的指针,定义方法如下: 类型标识符 (*指针名称)(形参列表) 下面我们通过一段代码加深我们的 ...

  10. jquery遍历json的几种方法

    for循环: 1 <script> 2 var obj = { 3 "status":1, 4 "bkmsg":"\u6210\u529f ...