C++基礎(chǔ)入門教程(二):數(shù)據(jù)、變量、宏等
哎,木了個(gè)頭的,這書太詳細(xì)了~看得累人
前面部分太過基礎(chǔ)了,很多語法方法的東西我也不重復(fù)記錄了~
今天才看看C++涉及到數(shù)據(jù)的一些基礎(chǔ)點(diǎn)吧,我把書中稍微比較有營養(yǎng)的部分抽離出來
1.初始化
一般情況下,我們聲明和初始化變量是這樣的:int iNum = 10;
其實(shí)這是延續(xù)了C語言的語法,C++還有一種語法,是這樣的:int iNum(10);
其實(shí)大部分人還是習(xí)慣用第一種吧(我也是),但如果哪天我們?cè)趧e人的代碼里看到第二種形式,不要被嚇蒙了~
2.宏定義
宏,用最粗俗,不,是最通俗的說法來解釋,那就是——查找替換。
比如這樣定義一個(gè)宏:#define NAME “mutou”
那么,以后我們就可以到處使用NAME這個(gè)宏,程序編譯之后,其實(shí)會(huì)把所有的NAME都替換為”mutou”,這就是查找替換的概念了。
為什么要這么做呢?方便修改和維護(hù)吧,只要我們稍微把宏定義改改,比如改成這樣:#define NAME “神經(jīng)病啊”
那么所有使用了NAME的地方就都變了。
3.三種進(jìn)制數(shù)的表示
就拿剛剛的變量來看:int iNum = 10;
大家都知道,10代表的是10。(小若:喂~爸,幫我準(zhǔn)備好100萬,我要捅死個(gè)人。)
等等,別激動(dòng)~!
10代表的是十進(jìn)制的10,但其實(shí)我們可以用八進(jìn)制和十六進(jìn)制來表示的,比如:
int iNum = 012; // 八進(jìn)制
int iNum = 0XA; //十六進(jìn)制
在數(shù)字前面加上0,就代表是八進(jìn)制。
在數(shù)字前面加上0X,就代表是十六進(jìn)制。
(注意了,是數(shù)字0,而不是字母o,不要弄錯(cuò)了~)
所以吖,大家不要為了裝酷就在某個(gè)數(shù)字前面加上0,你所認(rèn)為的007和7可不是一個(gè)數(shù)字。(小若:八進(jìn)制的7和十進(jìn)制的7是一樣的?。。?/p>
額,咳咳,所以大家不要為了裝酷就在某個(gè)數(shù)字前加上0X,你所認(rèn)為的0X7和7可不是一個(gè)數(shù)字。(小若:十六進(jìn)制的7和十進(jìn)制的7也是同樣的?。?/p>
咳咳,總之,大家不要隨便在數(shù)字前面加上0或者0X,除非你知道自己在做什么~!
4.const初探
我相信大家會(huì)經(jīng)常看到const這個(gè)關(guān)鍵字吧?
它最基本的用法就是定義常量,比如:const int iNum = 10;
這么定義的話, 以后我們就不能給iNum賦值了,也就是說,iNum其實(shí)是一個(gè)常量(不會(huì)改變的一個(gè)值)。
另外,即使你想這么用的:const int iNum;
是不可以的,我們一定要給常量初始化~
關(guān)于const,還有更多的內(nèi)容,不過,還是按照書的進(jìn)度來吧,目前這一章的內(nèi)容只是隨便提了一下。
5.auto聲明
相信大家在學(xué)習(xí)Cocos2d-x3.x版本時(shí),經(jīng)常會(huì)看到auto這個(gè)關(guān)鍵字。
其實(shí)這是C++11的新特性,它可以自動(dòng)判斷變量類型,不需要我們自己指定。
如果你熟悉lua的話,那么,可以粗俗,不,通俗地理解為local。
比如:
auto iNum = 10; 效果和 int iNum = 10; 是一樣的。
auto sp = Sprite::create();和 Sprite* sp = Sprite::create();是一樣的。
但,最好不要濫用,如果某些變量的類型不是十分明顯的,可能用了auto反而更不利于閱讀和維護(hù)了。
并且,像 int iNum = 10;這種最好不要用auto喇,得整死人的~
6.結(jié)束
接下來第四章的內(nèi)容更厚…希望很快能有下次的教程…
相關(guān)文章
C語言實(shí)現(xiàn)學(xué)籍管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了C語言實(shí)現(xiàn)學(xué)籍管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-03-03
C++數(shù)據(jù)結(jié)構(gòu)與算法之判斷一個(gè)鏈表是否為回文結(jié)構(gòu)的方法
這篇文章主要介紹了C++數(shù)據(jù)結(jié)構(gòu)與算法之判斷一個(gè)鏈表是否為回文結(jié)構(gòu)的方法,結(jié)合實(shí)例形式分析了回文結(jié)構(gòu)并結(jié)合實(shí)例給出了C++判斷回文的操作技巧,需要的朋友可以參考下2017-05-05
C++?IO設(shè)備讀寫功能實(shí)現(xiàn)詳解
C++的文件IO(Input,Output)操作就是指對(duì)文件進(jìn)行讀寫(輸入與輸出)的操作。輸入就是從磁盤上的文件中讀取內(nèi)容到內(nèi)存中。輸出就是將內(nèi)存中的數(shù)據(jù)內(nèi)容輸出或者說寫入到磁盤的文件中,這篇文章主要介紹了C++?IO設(shè)備讀寫功能實(shí)現(xiàn)2022-11-11
淺談#ifndef,#define,#endif的作用和用法
下面小編就為大家?guī)硪黄獪\談#ifndef,#define,#endif的作用和用法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-12-12
C++解密Chrome80版本數(shù)據(jù)庫的方法示例代碼
這篇文章主要介紹了C++解密Chrome80版本數(shù)據(jù)庫的方法示例代碼,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-05-05

