QT學習 基礎知識

2021-05-11 11:11:15 字數 2586 閱讀 7688

qt把它所支援的平台分兩級,第一級是重點支援的,第二級次之

第一級平台:      

platform

compilers

linux (32 and 64-bit)

gcc 4.2

microsoft windows xp

gcc 4.4 (mingw) (32-bit), msvc 2003, 2005 (32 and 64-bit)

microsoft windows vista

msvc 2005, 2008

microsoft windows vista 64bit

msvc 2008

embedded linux qws (arm)

gcc (codesourcery version)

windows ce 5.0 (armv4i, x86, mips)

msvc 2005 wince 5.0 standard (x86, pocket, smart, mipsii)

symbian (symbian/s60 3.1, 3.2 and 5.0)

第二級平台:

platform

compilers

windows xp, vista

gcc 3.4.2 (mingw)

windows 7

msvc 2008

hpuxi 11.11

acc 3.57, gcc 3.4

hpuxi 11.23

acc 6.10

solaris 10 ultrasparc

sun studio 12

aix 6

power5 xlc 7

microsoft windows xp

intel compiler

linux

intel compiler

embedded linux qws (mips, powerpc)

gcc (codesourcery version)

embedded linux x11 (arm)

gcc (scratchbox)

windows ce 6.0 (armv4i, x86, mips)

msvc 2008 wince 6.0 professional

因為計算機只認識數字,當需要讓計算機處理字元時,就需要在字元和數字之間建立一種對映,這就叫做字元編碼。比如ascii碼用數字0-127表示相應的字元。他們之間是一種對映關係。根據各個語系不同有很多不同的編碼系統,就我們比較關係的有gb和unicode兩個編碼系統。gb是中國制定的包含漢字的一套系統,unicode是國際制定的一套包含所有世界上用的字元的編碼系統。

國標編碼系統:ascii-->gb2312-->gbk-->gb18030,他們是前向相容的,同乙個字元在所有標準中都是用同一數字表示,只是後面的標準包含更多字元。

unicode編碼系統:ascii-->unicode,unicode編碼系統應該從兩個層面去理解,分別是編碼方式和實現方式,第一層面:編碼方式分兩個編碼規格,一種叫ucs-2(universal character set),用兩個位元組表示所有字元,可以表示216個字元,另一種叫ucs-4,用四個位元組表示,可以表示232個字元。第二層面:是基於上面的編碼方式如何去具體實現,叫做實現方式,具體實現大體分三種utf-8、utf-16、utf-32,utf是ucs transformation format的縮寫,可以翻譯成unicode字符集轉換格式,其中以utf-8最常用,下面我們來看看utf-8的實現方式:

utf-8以位元組為單位對unicode進行編碼。從unicode到utf-8的編碼方式如下:

unicode編碼(16進製制) ║ utf-8 位元組流(二進位制)

000000 - 00007f ║ 0******x

000080 - 0007ff ║ 110***xx 10******

000800 - 00ffff ║ 1110***x 10****** 10******

010000 - 10ffff ║ 11110*** 10****** 10****** 10******

utf-8的特點是對不同範圍的字元使用不同長度的編碼。對於0x00-0x7f之間的字元,utf-8編碼與ascii編碼完全相同。utf-8編碼的最大長度是4個位元組。從上表可以看出,4位元組模板有21個x,即可以容納21位二進位制數字。unicode的最大碼位0x10ffff也只有21位。

例1:「漢」字的unicode編碼是0x6c49。0x6c49在0x0800-0xffff之間,使用用3位元組模板了:1110***x 10****** 10******。將0x6c49寫成二進位制是:0110 1100 0100 1001, 用這個位元流依次代替模板中的x,得到:11100110 10110001 10001001,即e6 b1 89。

例2:unicode編碼0x20c30在0x010000-0x10ffff之間,使用用4位元組模板了:11110*** 10****** 10****** 10******。將0x20c30寫成21位二進位制數字(不足21位就在前面補0):0 0010 0000 1100 0011 0000,用這個位元流依次代替模板中的x,得到:11110000 10100000 10110000 10110000,即f0 a0 b0 b0。

Qt基礎知識小結

1 pro與.pri檔案 pri檔案跟pro檔案沒有本質區別,都是起到包含路徑等作用,區別在於pro檔案是主要檔案,pri是附屬檔案。下面是解釋 如果有幾個工程檔案需要共享相同的項,則可以把相同的項提取到單獨的檔案中,在各自的pro檔案中使用include 語句包含它們。通常,打算被別的工程檔案包含...

Qt執行緒基礎知識

那麼併發性是如何實現的呢?在單核cpu上並行工作是一種錯覺,有點類似於電影中移 像的錯覺。對於程序,這種錯覺是通過在很短的時間後中斷處理器在乙個程序上的工作而產生的。然後處理器轉到下一道工序。為了在程序之間切換,儲存當前的程式計數器並載入下乙個處理器的程式計數器。這是不夠的,因為同樣需要對暫存器 某...

QT基礎知識(七)QMainWindow

每乙個程式都有乙個主使用者介面,其他功能都是圍繞主視窗進行的,比如qmainwindow就是qt開發主視窗的基類。比如 通過檢視qt助手,如下 menu bar 選單欄 s 工具欄 dock widgets 懸浮視窗顯示區 central widget 中心主視窗顯示區域 status bar 底部...