新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 我的QT5學(xué)習(xí)之路(三)――模板庫、工具類和控件(中)

我的QT5學(xué)習(xí)之路(三)――模板庫、工具類和控件(中)

作者: 時間:2018-08-02 來源:網(wǎng)絡(luò) 收藏

本文引用地址:http://www.2s4d.com/article/201808/385044.htm

一、前言

  前面我們了解了關(guān)于Qt字符串的一些簡單操作,容器類的分類和各自的主要特點以及用途,這一次我們了解一些常見的工具類和常見的控件。

二、QByteArry和QVariant

2.1  QByteArry

 關(guān)于QByteArry,我們在上篇中曾經(jīng)看到過。QByteArry和QString的功能和API基本類似,具有很多相似的函數(shù)。不同的地方在于QByteArry能夠存儲原生的二進制數(shù)據(jù)和8位編碼的文本數(shù)據(jù),那么何為原生的二進制數(shù)據(jù)和8為編碼的文本數(shù)據(jù)呢?稍微了解計算機原理的童鞋可能都知道,計算機內(nèi)部所有的數(shù)據(jù)都是以0和1的形式進行存儲的,這種存儲形式就是二進制。對于這些二進制代碼,計算機并不知道其具體的含義,需要通過上下文進行決定。對于文件而言,即使是一個文本文件,讀出時也可以按照二進制的形式讀出,這就是二進制格式。如果把這些二進制中的0和1按照編碼解釋成一個個的字符,就可以構(gòu)成一個文本了。因此,QByteArry實際上朐生的二進制,也可以看作是文本,具有文本的一些操作。但是對于文本字符流的操作,還是建議使用QString而不是QByteArry,因為QString支持Unicode。

  出于方便,QByteArry自動的保證最后一個字節(jié)之后的那位的值是“