資料介紹
曾經有些人問我問題,問得都是一些很基礎的問題,但這些人卻已經能使用VC編一個對話框界面來進行必要的操作或者是文檔/視界面來實時接收端口數據并動態顯示曲線(還使用了多線程技術),卻連那些基礎的問題都不清楚,并且最嚴重的后果就是導致編寫出拙劣的代碼(雖然是多線程,但真不敢恭維),不清楚類的含義,混雜使用各種可用的技術來達到目的(連用異常代替選擇語句都弄出來了),代碼邏輯混亂,感覺就和金山快譯的翻譯效果一樣。
我認為任何事情,基礎都是最重要的,并且在做完我自定的最后一個項目后我就不再做編程的工作,守著這些經驗也沒什么意義,在此就用本系列說說我對編程的理解,幫助對電腦編程感興趣的人快速入門(不過也許并不會想象地那么快)。由于我從沒正經看完過一本C++的書(都是零碎偶爾翻翻的),并且本系列并不是教條式地將那些該死的名詞及其解釋羅列一遍,而是希望讀者能夠理解編程,而不是學會一門語言(即不止會英翻漢,還會漢翻英)。整個系列全用我自己的理解來寫的,并無參考其他教材(在一些基礎概念上還是參考了MSDN),所以本系列中的內容可能有和經典教材不一致的地方,但它們的本質應該還是一樣的,只是角度不同而已。本系列不會仔細講解C++的每個關鍵字(有些并不重要),畢竟目的不是C++語言參考,而是編程入門。如果本系列文章中有未提及的內容,還請參考MSDN中的C++語言參考(看完本系列文章后應該有能力做這件事了),而本系列給出的內容均是以VC編譯器為基礎,基于32位Windows操作系統的。
?
下面羅列一下各文章的標題和主要內容,紅色修飾的文章標題表示我認為的重點。
C++從零開始(一)——何謂編程(說明編程的真正含義及兩個重要卻容易被忽略的基礎概念)
C++從零開始(二)——何謂表達式(說明各操作符的用處,但不是全部,剩余的會在其它文章提到)
C++從零開始(三)——何謂變量(說明電腦的工作方式,闡述內存、地址等極其重要的概念)
C++從零開始(四)——賦值操作符(《C++從零開始(二)》的延續,并為指針的解釋打一點基礎)
C++從零開始(五)——何謂指針(闡述指針、數組等重要的概念)
C++從零開始(六)——何謂語句(講解C++提供的各個語句,說明各自存在的理由)
C++從零開始(七)——何謂函數(說明函數及其存在的理由)
C++從零開始(八)——C++樣例一(給出一兩個簡單算法,一步步說明如何從算法編寫出C++代碼)
C++從零開始(九)——何謂結構(簡要說明結構、枚舉等及其存在的理由)
C++從零開始(十)——何謂類(說明類及其存在的理由,以及聲明、定義、頭文件等概念)
C++從零開始(十一)——類的相關知識(說明派生、繼承、名字空間、操作符重載等)
C++從零開始(十二)——何謂面向對象編程思想(闡述何謂編程思想,重點講述面向對象編程思想)
何謂程序
程序,即過程的順序,準確地說應該是順序排列的多個過程,其是方法的描述。比如吃菜,先用筷子夾起菜,再用筷子將菜送入嘴中,最后咀嚼并吞下。其中的夾、送、咀嚼和吞下就被稱作命令,而菜則是資源,其狀態(如形狀、位置等)隨著命令的執行而不斷發生變化。上面就是吃菜這個方法的描述,也就是吃菜的程序。
任何方法都是為了改變某些資源的狀態而存在,因此任何方法的描述,也就是程序,也都一定有命令這個東西以及其所作用的資源。命令是由程序的執行者來實現的,比如上面的吃菜,其中的夾、送等都是由吃菜的人來實現的,而資源則一定是執行者可以改變的東西,而命令只是告訴執行者如何改變而已。
電腦程序和上面一樣,是方法的描述,而這些方法就是人期望電腦能做的事(注意不是電腦要做的事,這經常一直混淆著許多人),當人需要做這些事時,人再給出某些資源以期電腦能對其做正確的改變。如計算圓周率的程序,其只是方法的描述,本身是不能發生任何效用的,直到它被執行,人為給定它一塊內存(關于內存,請參考《C++從零開始(三)》),告訴它計算結果的精度及計算結果的存放位置后,其才改變人為給定的這塊內存的狀態以表現出計算結果。
因此,對于電腦程序,命令就是CPU的指令,而執行者也就由于是CPU的指令而必須是CPU了,而最后的資源則就是CPU可以改變其狀態的內存(當然不止,如端口等,不過一般應用程序都大量使用內存罷了)。所以,電腦程序就是電腦如何改變給定資源(一般是內存,也可以是其他硬件資源)的描述,注意是描述,本身沒有任何意義,除非被執行。
- C++ C語言函數查詢電子版下載 0次下載
- OpenCV2.3的C++速查表免費下載 4次下載
- C++程序設計的基礎知識初步了解C++的資料免費下載 25次下載
- visual C++編程詞典應用程序免費下載 27次下載
- Visual C++教程之C++的語言資料概述免費下載 3次下載
- C++容器的使用代碼資料總結免費下載 3次下載
- C++的一些試題資料總結免費下載 6次下載
- 如何從C轉向C++ Effective C++ PDF中文版教材免費下載 0次下載
- VISUAL C++教程之VISUAL C++的安裝和使用方法 19次下載
- C++入門教程之C++程序設計的課件資料免費下載 33次下載
- C++語言入門教程之C++語言程序設計函數的詳細資料概述免費下載 23次下載
- C++語言入門教程之C++語言程序設計數組的詳細資料概述免費下載 9次下載
- c和c++ 語言參考手冊詳細中文資料免費下載 0次下載
- 基于fpgrowth的c++實現詳細資料免費下載 1次下載
- 《Visual C++編程基礎與實踐》中文電子教材詳細資料免費下載 37次下載
- C語言和C++中結構體的區別 309次閱讀
- C++中實現類似instanceof的方法 631次閱讀
- 使用 MISRA C++:2023? 避免基于范圍的 for 循環中的錯誤 836次閱讀
- vb語言和c++語言的區別 2431次閱讀
- C++簡史:C++是如何開始的 637次閱讀
- C語言和C++中那些不同的地方 985次閱讀
- C與C++混合編程是什么 1744次閱讀
- C++語言的發展 617次閱讀
- C/C++基礎知識匯總 2437次閱讀
- C語言和C++的特點與用法詳細說明 4444次閱讀
- C++:引用的使用場景 4092次閱讀
- 詳談C語言和C++的區別和聯系 5830次閱讀
- 圖文詳解:C++的輸出輸入 3401次閱讀
- C++封裝:this指針 3492次閱讀
- 從C++的“深度”與“廣度”來探究其復雜程度 3421次閱讀
下載排行
本周
- 1IP6823 支持 qi 認證的無線充電發射控制 SOC
- 1.01 MB | 1次下載 | 免費
- 2IP6824? 全集成QI?無線充電發射控制SOC
- 1.22 MB | 1次下載 | 免費
- 3帶注入電流控制的1.8V通用SP8T-Z和2個SP4T-Z模擬開關
- 847.62KB | 次下載 | 免費
- 4PESD18VY1BBIF保護二極管規格書
- 4.56MB | 次下載 | 免費
- 574HC4050緩沖器規格書
- 217.58KB | 次下載 | 免費
- 674HC193;74HC7193二進制加減計數器規格書
- 327.93KB | 次下載 | 免費
- 774HC73-Q100雙JK觸發器規格書
- 220.85KB | 次下載 | 免費
- 8ASW3410 USB3.1高速數據開關切換規格書
- 1.39 MB | 次下載 | 免費
本月
- 1A7159和A7139射頻芯片的資料免費下載
- 0.20 MB | 55次下載 | 5 積分
- 2零死角玩轉STM32F103—指南者
- 26.78 MB | 41次下載 | 1 積分
- 3PIC12F629/675 數據手冊免費下載
- 2.38 MB | 36次下載 | 5 積分
- 4PIC16F716 數據手冊免費下載
- 2.35 MB | 18次下載 | 5 積分
- 5dsPIC33EDV64MC205電機控制開發板用戶指南
- 5.78MB | 8次下載 | 免費
- 6STC15系列常用寄存器匯總免費下載
- 1.60 MB | 7次下載 | 5 積分
- 7AN-1267: 使用ADSP-CM408F ADC控制器的電機控制反饋采樣時序
- 1.41MB | 5次下載 | 免費
- 8LP9962集成 PFC 和 和的 高壓半橋驅動的 LLC 諧振
- 3.30 MB | 4次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935124次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
- 1.48MB | 420063次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233088次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191367次下載 | 10 積分
- 5十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183335次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81581次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73813次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65988次下載 | 10 積分
評論