Qt學習及使用_第1部分_認識Qt---Qt簡介

前言

????????學以致用,通過QT框架的學習,一邊實踐,一邊探索編程的方方面面.

????????參考書:<Qt 6 C++開發指南>(以下稱"本書")

? ? ? ? 標識說明:概念用粗體+傾斜.重點內容用(加粗黑體)---重點內容(紅字)---重點內容(加粗紅字),

????????????????????????本書原話內容用深藍色標識,比較重要的內容用加粗傾斜下劃線深藍色標識

引入

? ? ? ? Qt的一些認識,其中有些部分是所有框架都有的內容

Qt概述

? ? ? ? Qt是一個跨平臺應用開發框架(framework),他是用C++語言寫的一套類庫.特別是圖形用戶界面(GUI)程序.

????????Qt實質上是用C++編寫的大型類庫,他為跨平臺應用開發提供了一個完整的框架.Qt框架包括大量的類,支持GUI、數據庫、網絡、多媒體等各種應用

? ? ? ? ---解讀:應用是指程序員開發,被使用者所使用的程序,也是通常所說的app(移動端).

? ? ? ? ? ? ? ? ? ? 框架是半成品應用,和類庫可以理解成是一個東西(上面提到了Qt實質上是一個大型類庫).框架可以包含其他框架,類庫,也就是說框架可以迭代(遞進定義)的.

????????????????????框架內容和文件相同,含數據類型定義,函數定義,全局變量定義等,以面向對象的角度,他們都被定義在類或者接口中.

????????????????????站在程序員的角度,框架封裝了硬件標準.框架的內容是模塊化的,例如上面說了框架包括GUI、數據庫等應用.這里的"應用"和框架一樣可能是半成品需要程序員完善.? ? ? ? ---以上為解讀

跨平臺

? ? ? ? 經常聽到說什么語言什么框架是跨平臺的.筆者把平臺簡單理解成操作系統.語言或框架都會成為機器碼交給CPU執行.所謂跨平臺是指語言針對平臺(操作系統)開發了對應的編譯器,使得操作系統可以識別代碼,跨平臺由語言或者框架實現,而不是平臺主動適應他.

目標平臺和主機平臺

? ? ? ? 目標平臺就是開發的Qt代碼可以被使用的操作系統.本書列舉了幾大塊,包括桌面端、移動端、嵌入式設備(沒有提到web端,就是不支持web開發)桌面端的幾種操作系統:Windows,Linux和macOS都支持;移動端的Android,iOS,Windows(這個現在很少了)都支持

? ? ? ? 在嵌入式系統中,支持嵌入式Linux,QNX,VxWorks,這些嵌入式設備一般有較強的處理器CPU和豐富的存儲器資源,例如轎車的全液晶儀表盤.

? ? ? ? ---解讀:這里對電子設備應該有個認識:全液晶儀表盤和電腦一樣有CPU,操作系統和內存,顯示器.他和個人計算機(PC)的區別在于:

????????1.輸入方式:個人計算機支持鼠標鍵盤輸入,儀表盤可能沒有輸入或者有觸摸或者其他方式輸入

? ? ? ? 2.任務:個人計算機是多任務系統,儀表盤是專門任務---顯示汽車某些狀態????????---以上為解讀

? ? ? ? MCU的應用開發:只支持部分單片機開發板,實際產品開發需要深度定制.

? ? ? ? 計算機稱為主機,主機包括Windows、桌面Linux、macOS等不同主機平臺,Qt提供了安裝在這3種主機平臺上的對應版本.要針對某個目標平臺開發應用,必須使用對應平臺的Qt.

? ? ? ? ---解讀:目標平臺不同,開發的Qt版本不同,在本書P2表1-1有說明? ???

? ? ? ? ? ? ? ? ? ? 這一點不用太擔心,筆者估計差別也不大? ? ? ?? ? ? ? ? ? ? ? ??????????????????????????????????????---以上為解讀

Qt的高效率

? ? ? ? 用Qt編寫的源代碼經過編譯后是在目標平臺上運行的原生二進制代碼,不想Java代碼那樣需要虛擬機來運行,所以具有很高的運行效率

Qt許可類型

? ? ? ? Qt許可分為商業許可和開源許可,開源許可又分為GPL許可和LGPL許可.

? ? ? ? 商業許可:使用者需要向Qt公司付費(某些模塊只有商業許可版本才有),被允許不公開源代碼

? ? ? ? GPL許可:用戶必須開源,允許商業化銷售

? ? ? ? LGPL許可:兩種情況--1.修改LGPL許可的Qt代碼,必須開源,允許商業化銷售

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?2.以庫形式鏈接或調用使用LGPL許可的Qt代碼,可閉源可銷售.

? ? ? ? ----因為商業方面不太懂,所以暫時不考慮.先想辦法把應用寫出來.

小結

? ? ? ? 初步認識Qt

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/82787.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/82787.shtml
英文地址,請注明出處:http://en.pswp.cn/web/82787.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Python語法基礎篇(包含類型轉換、拷貝、可變對象/不可變對象,函數,拆包,異常,模塊,閉包,裝飾器)

Python語法基礎篇&#xff08;二&#xff09; 類型轉換拷貝可變對象與不可變對象可變對象不可變對象 函數拆包異常模塊閉包裝飾器 &#x1f439;&#x1f439;&#x1f439;&#x1f439;&#x1f439;一只正在努力學習計算機技術的小倉鼠&#xff0c;尾部有課程鏈接哦~&#x…

錄制mp4

目錄 單線程保存mp4 多線程保存mp4 rtsp ffmpeg錄制mp4 單線程保存mp4 import cv2 import imageiocv2.namedWindow(photo, 0) # 0窗口大小可以任意拖動&#xff0c;1自適應 cv2.resizeWindow(photo, 1280, 720) url "rtsp://admin:aa123456192.168.1.64/h264/ch1/main…

ISBN書號查詢接口如何用PHP實現調用?

一、什么是ISBN書號查詢接口 ISBN數據查詢接口是一項圖書信息查詢服務。它基于全球通用的ISBN編碼系統&#xff0c;幫助用戶快速獲取圖書的詳細信息&#xff0c;包括書名、作者、出版社、出版時間、價格、封面等關鍵字段。 該接口廣泛應用于電商平臺、圖書館管理系統、二手書…

Redis底層數據結構之深入理解跳表(2)

上一篇文章中我們詳細講述了跳表的增添、查找和修改的操作&#xff0c;這篇文章我們來講解一下跳表在多線程并發時的安全問題。在Redis中&#xff0c;除了網絡IO部分和大文件的后臺復制涉及到多線程外&#xff0c;其余任務執行時全部都是單線程&#xff0c;這也就意味著在Redis…

Go語言依賴管理與版本控制-《Go語言實戰指南》

在現代軟件開發中&#xff0c;項目的第三方依賴和版本控制扮演著至關重要的角色。Go 語言自 Go 1.11 引入 Modules&#xff08;模塊化管理&#xff09;以來&#xff0c;已經實現了內建的依賴管理機制&#xff0c;徹底擺脫了傳統 GOPATH 模式的限制。 本章將深入探討如何使用 Go…

Appium+python自動化(十一)- 元素定位- 下

1、 List定位 List顧名思義就是一個列表&#xff0c;在python里面也有list這一個說法&#xff0c;如果你不是很理解什么是list&#xff0c;這里暫且理解為一個數組或者說一個集合。首先一個list是一個集合&#xff0c;那么他的個數也就成了不確定性&#xff0c;所以這里需要用復…

stress 服務器壓力測試的工具學習

一、stress 工具介紹 tress 是一種工具&#xff0c;可以對符合 POSIX 標準的操作系統施加可配置數量的 CPU、內存、I/O 或磁盤壓力&#xff0c;并報告其檢測到的任何錯誤。 stress 不是一個基準測試。它是由系統管理員用來評估其系統擴展性的工具&#xff0c;由內核程序員用來…

不止抓請求:5種開發場景中的抓包組合策略(含 Charles 等工具)

很多開發者用抓包&#xff0c;只在“接口調不通”的時候。 但在復雜項目中&#xff0c;抓包早已不僅是調錯工具&#xff0c;更是開發節奏提速器、協作問題解耦器、架構瓶頸探測器。 關鍵在于——不同場景下&#xff0c;你要用對方法、配對工具。 以下是我根據日常開發實戰&a…

藍橋杯3498 01串的熵

問題描述 對于一個長度為 23333333的 01 串, 如果其信息熵為 11625907.5798&#xff0c; 且 0 出現次數比 1 少, 那么這個 01 串中 0 出現了多少次? #include<iostream> #include<cmath> using namespace std;int n 23333333;int main() {//枚舉 0 出現的次數//因…

計算機系統大作業——程序人生

計算機系統 大作業 題 目 程序人生-Hello’s P2P 專 業 物聯網工程 學   號 2022112820 班 級 2237301 學 生 孟宇航 指 導 教 師 吳 銳 計算機科學與技術學院 2024年…

〈軟件安裝管家軟件目錄〉?Windows系統版

①裝機常用 ?壓縮解壓WinRAR7-ZIPBandZip360壓縮?文件工具EverythingOneCommander XYplorer ReNamer ?卸載軟件CCleanerIObitUninstallerUninstall toolGeekAutodesk卸載Adobe卸載Ashampoo?驅動軟件驅動人生&#xff08;離線版&#xff09;驅動精靈&#xff08;離線版&…

CentOS Stream 8 Unit network.service not found

一、問題現象 在 CentOS Stream 8 操作系統中&#xff0c;配置完靜態IP 信息&#xff0c;想重啟網絡服務。 執行如下命令&#xff1a; systemctl restart network 提示信息如下&#xff1a; Failed to restart network.service: Unit network.service not found. 二、問題…

極空間z4pro配置gitea mysql,內網穿透

極空間z4pro配置gitea mysql等記錄&#xff0c;內網穿透 1、mysql、gitea鏡像下載&#xff0c;極空間不成功&#xff0c;先用自己電腦科學后下載鏡像,拉取代碼&#xff1a; docker pull --platform linux/amd64 gitea/gitea:1.23 docker pull --platform linux/amd64 mysql:5.…

[假面騎士] 龍騎淺談

作為一個偽二次元的我&#xff0c;總感覺目前沒有什么好番可追。結果某一天在小破站刷到了一個假面騎士相關的視頻&#xff0c;我就突發奇想&#xff0c;要不把假面騎士補完算了。 搜了搜&#xff0c;版權全在企鵝哪兒&#xff0c;不想充&#xff0c;于是去找了某盤的資源。果…

F5 GSLB 最佳實踐:如何手動將Wide IP 故障轉移到另一個數據中心

下面簡要介紹如何手動將 Wide IP(用于 DNS 負載均衡)故障轉移到另一個數據中心,并提供一些最佳實踐。假設您使用 F5 BIG-IP DNS(以前稱為 GTM)管理一個 Wide IP,該 IP 引用位于不同數據中心的虛擬服務器 (VIP)。 典型的 GSLB (BIG-IP DNS) 設置 Wide IP:表示您想要全局負…

FART 脫殼某大廠 App + CodeItem 修復 dex + 反編譯還原源碼

版權歸作者所有&#xff0c;如有轉發&#xff0c;請注明文章出處&#xff1a;https://cyrus-studio.github.io/blog/ FART 脫殼 fartthread 方法在 app 啟動的時候&#xff08;ActivityThread&#xff09;開啟 fart 線程&#xff0c;休眠 60 秒&#xff0c;等待 app 啟動完成后…

在maven項目中 繼續增加maven 項目

背景項目 基于若依項目 由于若依項目都是Maven項目有父子結構因此自己建項目 也需如此管理 添加子Maven項目 利用idea 自帶工具 maven archetype 這里選 webapp 骨架 在這里構建自己的項目架子即可 將 這個架子加入到啟動類中

網絡攻防技術十四:入侵檢測與網絡欺騙

文章目錄 一、入侵檢測概述二、入侵系統的分類三、入侵檢測的分析方法1、特征檢測&#xff08;濫用檢測、誤用檢測&#xff09;2、異常檢測 四、Snort入侵檢測系統五、網絡欺詐技術1、蜜罐2、蜜網3、網絡欺騙防御 六、簡答題1. 入侵檢測系統對防火墻的安全彌補作用主要體現在哪…

吳恩達MCP課程(5):mcp_chatbot_prompt_resource.py

前提條件&#xff1a; 1、吳恩達MCP課程&#xff08;5&#xff09;&#xff1a;research_server_prompt_resource.py 2、server_config_prompt_resource.json文件 {"mcpServers": {"filesystem": {"command": "npx","args"…

【Linux】Linux基礎指令3

1. which指令 功能&#xff1a;搜索系統指定的命令 2. whereis指令 功能&#xff1a;?于找到程序的源、?進制?件或?冊 3. grep指令 語法&#xff1a; grep [ 選項 ] 搜尋字符串 ?件 功能&#xff1a;在?件中搜索字符串&#xff0c;將找到的?打印出來 常?選項&…