命令行程序是面向過程的程序設計。服務器
命令行程序的特色: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開發環境打開工程後,能夠在相應代碼行設置斷點,當程序運行到斷點行時會暫停運行,設置條件斷點時,當知足條件時,程序才暫停運行。