C++入门课程系列:基础知识篇(1)
C++是一種靜態(tài)數(shù)據(jù)類型語言。
? 在C++語言中,變量是計(jì)算機(jī)編程的一個(gè)重要概念,它是一個(gè)存儲(chǔ)值的字母或名稱
? 有幾種基本類型的變量:
string (“一組詞”)、
chars(‘a(chǎn)’)、
floats(10.2)、
booleans(true或false 值)
這幾個(gè)是最常見的
創(chuàng)一個(gè)小群,供大家學(xué)習(xí)交流聊天
如果有對(duì)學(xué)C++方面有什么疑惑問題的,或者有什么想說的想聊的大家可以一起交流學(xué)習(xí)一起進(jìn)步呀。
也希望大家對(duì)學(xué)C++能夠持之以恒
C++愛好群,
如果你想要學(xué)好C++最好加入一個(gè)組織,這樣大家學(xué)習(xí)的話就比較方便,還能夠共同交流和分享資料,給你推薦一個(gè)學(xué)習(xí)的組織:快樂學(xué)習(xí)C++組織 可以點(diǎn)擊組織二字,可以直達(dá)
? 使用cout<<語句將數(shù)據(jù)輸出到控制臺(tái)
? 使用>> cin語句讀取用戶輸入的數(shù)據(jù)
? C++語言中,可用一個(gè)值來定義一個(gè)新的變量,比如:
int x = 0;
string myWords = “ “;
?無符號(hào)×××(unsigned ints)始終為正數(shù),它占用的內(nèi)存少于常用的ints:uint = 10;
? 如果你將一個(gè)值賦給const,數(shù)值保持不變。如果你嘗試更改這個(gè)值,編譯器會(huì)生成錯(cuò)誤或警告(complain)信息。所以,我們應(yīng)該把它看作是一個(gè)不變的值(constant value),就和生我們的母親一樣,她的角色是不會(huì)變的。
例如:
string myBestFriend = “Stacey”;
const string myBiologicalDad = “David”;
string myBestFriend = “Terri”
//because Stacey is lame! She made fun of me for being smart. (Stacey這個(gè)名字太糟糕了!我好朋友認(rèn)為我自作聰明,取笑了我一番。)
myBiologicalDad = “Tom”;
//just doesn’t work! Tom can’t be your biological dad. You only get one of these. (語句并不成立!Tom不可能是你的親爹,你只有一個(gè)親爹。)
? C++中的枚舉(Enums)或枚舉數(shù)(Enumerators)很酷。
枚舉是一個(gè)被命名的×××常數(shù)的集合,枚舉可以讓游戲編程的方式更輕松。
現(xiàn)在,讓我們看看數(shù)據(jù)類型。
數(shù)據(jù)類型,顧名思義,就是數(shù)據(jù)的一種類型或者事物/對(duì)象(也叫變量)的一種類型。
值得一提的是,我們必須定義數(shù)據(jù)類型(data type)。
我們所使用int、string、char、bool的語句,就是C++語言中的預(yù)定義數(shù)據(jù)類型(predefined data type)。
首先,我們必須要定義數(shù)據(jù)類型(或?qū)ο?#xff09;。
其次,我們必須要實(shí)例化(創(chuàng)建)數(shù)據(jù)類型。
C++用int語句幫助你走了第一步,這也就能解釋我們?yōu)槭裁捶Qint為原始數(shù)據(jù)類型(primitive data type)了。
枚舉(Enums)是尚未定義的原始數(shù)據(jù)類型。要使用枚舉,你得這么做:
//first off define the enumerator(首先,定義枚舉數(shù))
enum difficulty { NOVICE, EASY, HARD};
接下來,實(shí)例化枚舉。
?什么是實(shí)例化(instantiate)呢?實(shí)例化是指用類創(chuàng)建對(duì)象的過程,或創(chuàng)建一個(gè)對(duì)象的一個(gè)實(shí)例(create an instance of an object)。
?對(duì)象或數(shù)據(jù)類型,指的是概念性藍(lán)圖(conceptual blueprint),其實(shí),它和我們生活所說的汽車或房子設(shè)計(jì)圖沒多大差別。
實(shí)例化意味著創(chuàng)建一個(gè)實(shí)例——亦稱作創(chuàng)建真實(shí)的汽車。
例:如果此時(shí)已經(jīng)有1969輛保時(shí)捷×××,但設(shè)計(jì)圖只有一張。此時(shí),你可以在C++中創(chuàng)建這兩樣?xùn)|西。
difficulty myDifficulty = EASY;
為什么要大寫呢?
這是C++里的一個(gè)語言規(guī)定,大寫const值是為了讓語句清晰。
現(xiàn)在我們可以使用枚舉來測(cè)試狀態(tài)。
enum difficulty {NOVICE, EASY, HARD};
difficulty myDiff = EASY;
if(difficulty == EASY) {
//only fire 2 rockets; (只發(fā)射2枚火箭)
}
/ Because enums are equal to a list of numbers, (因?yàn)槊杜e等同于數(shù)字列表)
NOVICE == 0
EASY == 1
HARD == 2. /
// this also works.(這同樣有用)
if(difficulty == 1) {
//only fire 2 rockets; (只發(fā)射2枚火箭)
}
**注意你現(xiàn)在不能給mydiff重新賦值…這是常數(shù)數(shù)據(jù)類型了,如果你重新賦值,你將收到一個(gè)錯(cuò)誤信息。
mydiff = HARD;
// NO GOOD! (沒用!)
(偽)隨機(jī)數(shù)
隨機(jī)功能來自于我們的<stdlib.h>庫。我們的預(yù)處理程序(preprocessor)將它置于代碼前,方便我們利用這一功能,盡管在集成開發(fā)環(huán)境(IDE)中看不到它,但我們可以使用以下語句:#include <stdlib.h>
//note no semi colon(注意沒有分號(hào))
rand();
returns a val between 0 - 32767(在0-32767之間返回一個(gè)值)
這是一個(gè)陷阱——它得到的值都是相同的。太坑了!
在產(chǎn)生隨機(jī)數(shù)前,我們必須用srand( )設(shè)好隨機(jī)數(shù)種子(seed)。
srand(time(0));
每次運(yùn)行app時(shí),由隨機(jī)數(shù)種子產(chǎn)生不同的隨機(jī)數(shù)值,這個(gè)隨機(jī)數(shù)種子來自于系統(tǒng)時(shí)鐘(system’s clock)。時(shí)間是你必須列入在內(nèi)的一個(gè)lib文件:
#include <time.h>
下面是問題時(shí)間!
什么是數(shù)據(jù)類型(data type)?
C++中有哪些數(shù)據(jù)類型?
什么是無符號(hào)×××(unsigned ints)?
什么是const?
什么是枚舉(enum)?
如何使用枚舉?
什么是對(duì)象(object)?
什么是實(shí)例化?
如何解決rand( )函數(shù)每次產(chǎn)生隨機(jī)數(shù)都一樣的問題?
什么是%?
如何檢驗(yàn)兩個(gè)變量的等式?
什么是游戲主循環(huán)(game loop)?
什么是“&&”、“︱︱” 以及“!=”?我們又該在什么情況下使用它們呢?
轉(zhuǎn)載于:https://blog.51cto.com/14209412/2353085
總結(jié)
以上是生活随笔為你收集整理的C++入门课程系列:基础知识篇(1)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2018秋寒假作业5—PTA编程总结2
- 下一篇: VC实现微秒(十万分之一秒)休眠