專-C++類型的認識

好多時候覺得C++的基礎很亂很複雜,頭腦裏C++知識碎片化嚴重,今天我想總結一下我對C++類型的認識,本人基礎不好,還希望大家批評指正。當然,如果你的目的不是來指正或者是你是一個大神要看技術貼的心態,對不起,這篇博客對你來說很無聊。

首先,類型是所有程序的基礎,類型能夠告訴我們的是數據代表的是什麼意思以及它封裝了的操作。

C++的類型可以分爲三個部分,內置數據類型,各種庫提供的類型以及用戶自定義類型。類型的使用往往決定了一個程序的好壞,爲什麼這麼說?拿一箇中國象棋的程序舉例吧。設想一下,如果C++的標準庫類型有一個chess類型,而chess類型滿足一切我們程序需求,那麼對於整個程序來說,除了main函數裏寫幾句調用代碼,拋開圖形界面來說的話,整個程序就結束了。然而實際的情況是標準庫並沒有一個chess類型,所以我們的程序需要的是一個設計良好的chess類。當然我的意思是不用其他人已經寫好的類來調用,那樣我們只要看下它的接口就能使用了。現在的問題是:怎麼設計一個良好的chess類?舉例來講,當要描述一個棋盤的時候我們要考慮怎麼描述現實中一個9*10的棋盤以及描述棋盤的狀態,我們當然可以用一個二維數組,或者三位數組?這都將影響程序的大小 ,效率以及最重要的結果。

舉這個例子的目的在於,分享一下我對類型的理解:不論是我們平時的int,char,標準庫的string,vector還是自己定義的chess,都是類型。而我之前卻錯誤的認爲,類型只有內置類型的int等。可以這麼說,一本C++的教程80%以上與類型有關,關係不大的章節只有語句和表達式兩塊,而這兩塊又是組成類型的基礎。

說完了之前的問題我們來說一下如何學好C++吧,當然寬泛的來講不是這篇博客的目的所在,換句話說,怎麼學好C++類型。從前面可以知道,我們很容易的分出來三類,要對C++內置類型十分的熟悉,對各種庫有必要的瞭解,第三點就是對C++的OO機制有紮實的認知。可以這麼理解吧,內置類型是基礎,調用的庫是工具,而類是C++的精華。

1.內置類型

關於內置類型,其實現在我的認識還是太少,我曾經在C++吧裏發過一個專題貼,當時是爲了改進自己對C++的認識,(和這篇很像),談的是內置類型,Primer我看了兩三遍而且我當時覺得我是個有基礎的人。。。,沒想到自己太不知天高地厚,錯誤百出。我只能說我談一下從那以後我改變的看法了。

C++內置類型分爲五部分,void,bool各算是一部分,單字符,整數和浮點數個算是一部分。這裏先注意整形和整數的區別,整形包括整數,字符和bool,整數包括short,int,long每個類型又分爲有無符號,恩。。。附圖吧




分類後接下來面臨的兩個問題是取值範圍和賦值

取值範圍:


賦值:




發佈了29 篇原創文章 · 獲贊 2 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章