命令行程序是面向过程的程序设计。服务器
命令行程序的特色:ide
A、基于顺序结构执行函数
B、程序执行过程当中不需与用户交互spa
C、程序执行结束给出最终运行结果操作系统
命令行程序适用场合:命令行
A、单任务场合翻译
B、无交互、简单交互场合debug
C、服务器应用场合设计
GUI程序的特色:调试
A、基于消息驱动模型的程序
B、程序执行依赖用户交互过程
C、程序执行过程当中实时响应用户操做
D、通常程序执行后不会主动退出
GUI程序适用场合:
A、多任务场合
B、强用户交互场合
C、非专业计算机用户
GUI程序运行模式:
GUI程序消息处理模型:
现代操做系统都支持GUI程序开发,特色以下:
A、操做系统提供原生SDK支持GUI程序开发
B、GUI程序开发是现代操做系统的主流技术
C、不一样操做系统上的GUI开发原理相同
D、不一样操做系统上的GUI SDK不一样
GUI程序开发原理:
A、GUI程序在运行时会建立一个消息队列
B、系统内核将用户操做翻译为对应的程序消息
C、程序在运行过程当中须要实时处理消息队列中的消息
D、当队列中没有消息时,程序将处于停滞状态
GUI程序开发过程:
A、建立窗口、窗口元素GUI界面
B、在消息处理函数中根据程序消息作出不一样相应
操做系统提供了建立界面元素所须要的函数,依次调用不一样功能的函数就能够建立出界面元素,但操做系统提供的原生函数没法直接映射到界面元素。根据面向对象程序设计思想,将界面元素抽象为类,GUI界面的建立过程就是组合不一样界面元素对象的过程。
QT是利用面向对象程序设计思想开发的一套GUI组件库,QT将不一样操做系统的GUI细节封装于类内部,并提供了一套跨平台的类用于GUI程序开发。
QT遵循经典的GUI程序开发模式。
#include <QApplication>
#include <QMainWindow>
#include <QPushButton>
int main(int argc, char* argv[])
{
QApplication a(argc, argv);
QMainWindow w;
QPushButton b(&w);
b.setText("Hello QT!");
w.show();
return a.exec();
}
A、进入QT开发环境命令行
点击QT 4.7.4 Command Prompt进入QT开发环境命令行环境。
B、进入源程序所在目录
C、根据源码生成工程文件
qmake -project
生成过程文件xxxxx.pro
D、根据工程文件生成Makefile文件
qmake
生成Makefile、Makefile.Debug、Makefile.Release文件和release、debug目录
E、编译
make
编译生成可执行文件xxx.exe
QT Creator是QT的可视化集成开发环境。
QT Creator环境的调试方法:
A、log调试法
在代码中加入必定打印语句,打印出程序状态和关键变量的值
Log打印须要添加#include <QDebug>
qDebug() << "hello";
B、断点调试法
在QT Creator开发环境打开工程后,能够在相应代码行设置断点,当程序运行到断点行时会暂停运行,设置条件断点时,当知足条件时,程序才暂停运行。