成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

C++入門學習筆記總結之談

開發 后端
下面著重講述C++入門學習時碰到的相關難題和問題,以及學習C++的技巧,如何更好的進行C++的學習,希望本文能給大家帶來幫助。

許多編程人員學習C++總結經驗為,有的覺得C++語言是一門獨立的語言,并不是在C語言的基礎上,可以直接學習C++不必先從C下手,下面把我的C++入門學習的經驗給大家拿出來分享一下,希望能給大家帶來有用的信息。

我想先說說C++入門學習吧,想必這個概念諸位都有所了解,在下多羅嗦幾句再說一下:所謂庫,就是許多程序代碼的集合:編程的時候,會有許多常用的功能,如果每個用到這些功能的程序都要從頭寫一遍,則會出現無謂地重復勞動;因此人們把這些常用的功能編寫好,并按一定的邏輯關系組織、封裝起來,便于編程時直接調用,就成為了庫。

庫中的程序模塊是怎么放置的呢?嗯,首先,我們很自然會想到把那些常用的功能封裝成一個個相應的函數,這樣程序要用到這些功能的時候,我們就調用相應的函數。這些函數組成的庫自然可以叫做函數庫,顯然函數庫的思想是面向過程的;

其次,我們也可以把要實現的任務封裝成一個個類(class),例如要某個庫包含文件操作的功能,設計者可能會寫一個File類,它或許會有open、close、reset、read、write等方法,內部也可能會有一些保存文件信息的數據結構,等等。

這些由各種類組成的庫稱為類庫,它是面向對象的。因此,按組織思想分,庫可以分為函數庫、類庫等。至于標準庫與非標準庫,則是另一種分類方式。如果某個庫是C++語言標準所“規定”要有的,如STL(即標準模板庫,我們在C++中常用的vector、list之類的容器以及相關算法都屬于STL的一部分)。

是語言中的一部分,則稱為C++入門學習(被標準化了的,無論VC、C++ Builder還是其它什么C++編譯平臺,都要求包含它才算是“真正”的C++)。當然,標準庫的范圍比較窄,除此之外的諸如MFC、VCL、Qt等都是其它軟件廠商(或組織)自己編寫的,不是C++標準所規定(單純介紹C++的書也不會介紹它們),不是語言的一部分,所以不是標準庫。

應用程序編程接口(Application Programming Interface)是操作系統為程序員提供的功能。你要在一個操作系統上編寫程序,一舉一動都要依賴操作系統:你要讀一個文件,或者在屏幕上畫一個點,最終都是要求操作系統替你實現的,而這些“要求”的方式,或者說是“與操作系統打交道”的方式,就是通過編程接口。

在DOS中,程序員要實現的功能最終是通過中斷的方式“告訴”操作系統,從而讓其替你完成的,因此可以說中斷是DOS系統的API;到了更復雜的Windows系統,由于中斷過于簡單與低級,所以Windows為程序員提供的是一系列的函數。

這些函數已經被編譯好,大多放在各個隨系統一起安裝好的.dll文件中,大多數情況下,Windows下的編譯器會將我們的程序與這些函數庫鏈接好;很自然地,它們就被稱為API函數。Windows的API函數成千上萬。

與DOS區區十幾幾十條的中斷相比實在是復雜多了,從而提供了比DOS更多、更完善的服務。不過學習的時候不可能把這些函數的名稱、調用方法、參數表之類全部記得一清二楚,一般對部分最常用的函數有個大概的掌握就可以;其它的一般是隨用隨查,這方面MSDN是一個相當好(而且大概也是最權威)的資料集。

首先重復一句Bjarne的話:“我們的系統已經是極度復雜的了,為了避開C++入門學習的復雜性而干脆不用C++(Linus的做法),無異于因噎廢食?!痹谒锌捎肅和C++的領域,C++都是比C更好的語言。當我說“更好的”時候,我說的是C++擁有比C更安全的類型檢查、更好的抽象機制、更優秀的庫。

當然,凡事都有例外,如果你做的項目1)不大。2)編碼中用不到什么抽象機制,甚至ADT(抽象數據類型,例如std::complex這種不含多態和繼承的)也用不到,RAII也用不到,異常也用不到。3)你連基礎庫(如,簡化資源管理的智能指針、智能容器)都用不著。那么也許你用C的確沒問題;所以如果你的情況如此,不用和我爭論,因為我無法反駁你。我們這里說的領域大致是Bjarne在“C++應用列表”里面列出來的那些地方。

底線是:如果把C++中的諸多不必要的復雜性去掉,留下那些本質的,重要的語言特性,簡化語言模型,消除歷史包袱。即便是C++的反對者也許也很難找到理由說“我還是不用C++”。在我看來,一個真正從實踐意義上理性反對使用C++入門學習的人只有一個理由:C++的復雜性帶來的混亂抵消乃至超過了C++的抽象機制和庫(在他的特定項目中)帶來的好處。

【編輯推薦】

  1. C與C++中標準輸入實現方式上的一點區別
  2. C++編譯器如何對Const常量進行分配存儲空間
  3. C++類庫設計的基本構思與方法
  4. 玩轉C++語言的幾種方法
  5. 如何更好的進行C++代碼編制
責任編輯:chenqingxiang 來源: CSDN
相關推薦

2010-01-18 10:53:26

2010-01-21 18:00:59

C++語言

2010-01-27 16:52:31

C++語言學習

2010-01-25 11:21:01

C++語法

2010-01-27 15:54:49

C++實現程序

2010-01-14 17:02:10

學習C++

2011-07-14 10:12:50

C++

2010-01-15 14:52:33

Visual C++

2010-02-02 13:37:12

如何學習Python

2010-02-07 15:12:24

學習Android

2010-02-22 09:43:42

學習Python語言

2010-01-15 14:59:54

C++標準程序庫

2010-01-15 16:37:28

Visual C++

2010-02-03 15:52:02

Python學習研究

2010-02-06 13:36:57

學習Android程序

2010-01-13 11:10:17

C++庫函數

2009-08-13 18:21:52

C#學習筆記

2011-04-19 17:36:12

C++

2011-04-19 17:44:02

C++

2010-01-25 14:31:07

C++類
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 精品1区2区3区4区 | 精品一区电影 | 视频一区在线 | 久久综合久色欧美综合狠狠 | 婷婷久久一区 | 国产一区二区免费在线 | 日韩一区中文字幕 | 日韩亚洲欧美综合 | 成人免费网视频 | 国产精品国产三级国产aⅴ原创 | 免费在线一区二区三区 | 国产精品小视频在线观看 | 黄色在线免费观看 | 日韩免费视频 | 国精品一区二区 | 久久aⅴ乱码一区二区三区 亚洲国产成人精品久久久国产成人一区 | 免费看国产a| 91麻豆精品国产91久久久久久 | 亚洲欧美日韩一区二区 | 精品免费国产视频 | 二区在线视频 | 日韩欧美精品在线 | 最新高清无码专区 | 欧美一区二区综合 | 亚洲欧美中文日韩在线v日本 | 天天综合网天天综合 | 国产在线精品一区二区 | 色婷婷久久综合 | 狠狠综合久久av一区二区小说 | 欧美日韩福利视频 | 免费成人高清在线视频 | 精精精精xxxx免费视频 | 日韩视频专区 | 精品久久久久久久久久久久 | www国产亚洲精品久久网站 | 成人av播放 | 欧美激情视频一区二区三区免费 | 久久精品日产第一区二区三区 | 毛片网站免费观看 | 国产99久久| 精品国产一区二区三区久久久久久 |