哎,木了個頭的,這書太詳細了~看得累人
前面部分太過基礎了,很多文法方法的東西我也不重複記錄了~
今天才看看C++涉及到資料的一些基礎點吧,我把書中稍微比較有營養的部分抽離出來
1.初始化
一般情況下,我們聲明和初始設定變數是這樣的:int iNum = 10;
其實這是延續了C語言的文法,C++還有一種文法,是這樣的:int iNum(10);
其實大部分人還是習慣用第一種吧(我也是),但如果哪天我們在別人的代碼裡看到第二種形式,不要被嚇蒙了~
2.宏定義
宏,用最粗俗,不,是最通俗的說法來解釋,那就是——尋找替換。
比如這樣定義一個宏:#define NAME “mutou”
那麼,以後我們就可以到處使用NAME這個宏,程式編譯之後,其實會把所有的NAME都替換為”mutou”,這就是尋找替換的概念了。
為什麼要這麼做呢?方便修改和維護吧,只要我們稍微把宏定義改改,比如改成這樣:#define NAME “神經病啊”
那麼所有使用了NAME的地方就都變了。
3.三種進位數的表示
就拿剛剛的變數來看:int iNum = 10;
大家都知道,10代表的是10。(小若:喂~爸,幫我準備好100萬,我要捅死個人。)
等等,別激動~!
10代表的是十進位的10,但其實我們可以用八進位和十六進位來表示的,比如:
複製代碼 代碼如下:
int iNum = 012; // 八進位
int iNum = 0XA; //十六進位
在數字前面加上0,就代表是八進位。
在數字前面加上0X,就代表是十六進位。
(注意了,是數字0,而不是字母o,不要弄錯了~)
所以吖,大家不要為了裝酷就在某個數字前面加上0,你所認為的007和7可不是一個數字。(小若:八進位的7和十進位的7是一樣的啊!)
額,咳咳,所以大家不要為了裝酷就在某個數字前加上0X,你所認為的0X7和7可不是一個數字。(小若:十六進位的7和十進位的7也是同樣的!)
咳咳,總之,大家不要隨便在數字前面加上0或者0X,除非你知道自己在做什麼~!
4.const初探
我相信大家會經常看到const這個關鍵字吧?
它最基本的用法就是定義常量,比如:const int iNum = 10;
這麼定義的話, 以後我們就不能給iNum賦值了,也就是說,iNum其實是一個常量(不會改變的一個值)。
另外,即使你想這麼用的:const int iNum;
是不可以的,我們一定要給常量初始化~
關於const,還有更多的內容,不過,還是按照書的進度來吧,目前這一章的內容只是隨便提了一下。
5.auto聲明
相信大家在學習Cocos2d-x3.x版本時,經常會看到auto這個關鍵字。
其實這是C++11的新特性,它可以自動判斷變數類型,不需要我們自己指定。
如果你熟悉lua的話,那麼,可以粗俗,不,通俗地理解為local。
比如:
auto iNum = 10; 效果和 int iNum = 10; 是一樣的。
auto sp = Sprite::create();和 Sprite* sp = Sprite::create();是一樣的。
但,最好不要濫用,如果某些變數的類型不是十分明顯的,可能用了auto反而更不利於閱讀和維護了。
並且,像 int iNum = 10;這種最好不要用auto喇,得整死人的~
6.結束
接下來第四章的內容更厚…希望很快能有下次的教程…