Basic C++ Programming

How to Write a C++ Program


定義新的class應(yīng)該為他提供自己的output運算符

????????讓class的用戶得以像面對內(nèi)置類型一樣地以同樣方式輸出對象內(nèi)容
??????????????????????????重載?掐松!(目前并沒有看到用什么來解決)

Defining and Initialzing a Data Object


構(gòu)造函數(shù)初始化語法

// TypeName Variable(value);
int num(0);

????????如果對象需要多個初值(例如復(fù)數(shù))踱侣,普通的就沒辦法完成任務(wù),使用構(gòu)造函數(shù)初始化語法就可以完成了大磺。

const

????????被定義為const的對象抡句,在獲得初值之后,無法再有任何變動量没。一旦再給const對象指定新值玉转,就會產(chǎn)生==編譯錯誤==。

條件運算符(三目運算符)

expr
    ? 如果expr為true殴蹄,執(zhí)行這里
    : 如果expr為false究抓,執(zhí)行這里

????????其實他只是一個簡單的if-else語句

if (expr)
{
    // code
}
else (expr)
{
    // code
}

運算符的優(yōu)先級

  1. 邏輯運算符????????NOT
  2. 算術(shù)運算符????????* / %
  3. 算術(shù)運算符????????+ -
  4. 關(guān)系運算符????????< > <= >=
  5. 關(guān)系運算符????????== !=
  6. 邏輯運算符????????AND
  7. 邏輯運算符????????OR
  8. 賦值運算符
// 這是不可能正確的,永遠為false
! ival % 2 

Writing Conditional and Loop Statements


這是一小段程序的偽碼袭灯,覺得他對程序的邏輯挺有幫助的刺下,小記一下

while 用戶想要猜測的某個數(shù)列
{
    #1
    顯示該數(shù)列
    while 用戶所猜的答案并不正確 and 用戶想要再猜一次
    { #2
        讀取用戶所猜的答案
        遞增 number_of_tries
        if 答案正確
        { #3
            遞增correct_guess
            將got_ittrue的值設(shè)為true
        }
        else
        {
            用戶打錯了,在此對他表示遺憾稽荧,并根據(jù)用戶已猜過的總數(shù)橘茉,產(chǎn)生不同的回應(yīng)結(jié)果    // #4
            詢問用戶是否愿意再試一次
            讀取用戶的意愿
            if 用戶相應(yīng) no  // #5
                將go_for_it 的值設(shè)為false
        }
    }
}

for循環(huán)中++ii++區(qū)別淺析

for (size_t i = 0; i < n; ++i)
{
    // code
}

????????在以前我常使用的是i++,并且在很多編譯器中的預(yù)設(shè)代碼也是i++姨丈,但是在《C++ Primer》中發(fā)現(xiàn)了不一樣的東西畅卓。

i++要==另外申請一個變量==來保存i + 1之后的值,因為ii + 1的值都會用到蟋恬,但是++i就不一樣只存在一個變量翁潘。試想一下我們使用一個來做運算的時候,效率是不是會特別低歼争。

switch

switch( flag )
{
    case 0:
    case 1:
        // code
        break;
    // ...
}

????????這樣寫是可以的拜马,相當(dāng)于||

if (flag == 0 || flag == 1)
{
    // code
}

????????不過第一次遇到這樣寫,還是記錄一下沐绒,說不定有什么用處

How To Use Arrays and Vectors


使用array來初始化vector

// ArrayName[]   
vector<TypeName> VecName (ArrayName, ArrayName + ArrayNameSize);

Pinters Allow for Flexibility


& 取址運算符

????????希望取得對象所在的內(nèi)存地址而非對象的值

* 提領(lǐng)

????????取得位于該指針所指內(nèi)存地址上的對象

防止對null指針進行提領(lǐng)操作

????????預(yù)防程序報錯

if (pi && *pi == 1)
{
    // code
}

.(dot) 和 ->(arrow)

  • .:對象自身調(diào)用操作
  • ->:指向?qū)ο笾羔樥{(diào)用操作

Writing and Reading Files


頭文件

#include <fstream>

輸出模式開啟文件

ofstream OutFile("FileName.txt");
  • 如果指定文件不存在俩莽,就會有一個新的文件被產(chǎn)生出來并打開供輸出使用。
  • 如果指定文件已經(jīng)存在乔遮,這個文件會被打開用于輸出扮超,而文件中原有的數(shù)據(jù)就會被丟棄。
// 追加模式
ofstream OutFile("FileName.txt", ios_base::app);
// 如果需要邊讀邊寫,以追加模式打開檔案瞒津,文件位置位于末尾蝉衣,必須重新定位。
// 但是寫入操作都會將數(shù)據(jù)添加在文件末尾
ofstream IoFile("FileName.txt", ios_base::in|ios_base::app);
IoFile.seekg(0);    // 定位到起始處
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末巷蚪,一起剝皮案震驚了整個濱河市病毡,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌屁柏,老刑警劉巖啦膜,帶你破解...
    沈念sama閱讀 221,576評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異淌喻,居然都是意外死亡僧家,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,515評論 3 399
  • 文/潘曉璐 我一進店門裸删,熙熙樓的掌柜王于貴愁眉苦臉地迎上來八拱,“玉大人,你說我怎么就攤上這事涯塔〖〉荆” “怎么了?”我有些...
    開封第一講書人閱讀 168,017評論 0 360
  • 文/不壞的土叔 我叫張陵匕荸,是天一觀的道長爹谭。 經(jīng)常有香客問我,道長榛搔,這世上最難降的妖魔是什么诺凡? 我笑而不...
    開封第一講書人閱讀 59,626評論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮践惑,結(jié)果婚禮上腹泌,老公的妹妹穿的比我還像新娘。我一直安慰自己尔觉,他們只是感情好凉袱,可當(dāng)我...
    茶點故事閱讀 68,625評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著穷娱,像睡著了一般绑蔫。 火紅的嫁衣襯著肌膚如雪运沦。 梳的紋絲不亂的頭發(fā)上泵额,一...
    開封第一講書人閱讀 52,255評論 1 308
  • 那天,我揣著相機與錄音携添,去河邊找鬼嫁盲。 笑死,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的羞秤。 我是一名探鬼主播缸托,決...
    沈念sama閱讀 40,825評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼瘾蛋!你這毒婦竟也來了俐镐?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,729評論 0 276
  • 序言:老撾萬榮一對情侶失蹤哺哼,失蹤者是張志新(化名)和其女友劉穎佩抹,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體取董,經(jīng)...
    沈念sama閱讀 46,271評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡棍苹,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,363評論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了茵汰。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片枢里。...
    茶點故事閱讀 40,498評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖蹂午,靈堂內(nèi)的尸體忽然破棺而出栏豺,到底是詐尸還是另有隱情,我是刑警寧澤画侣,帶...
    沈念sama閱讀 36,183評論 5 350
  • 正文 年R本政府宣布冰悠,位于F島的核電站,受9級特大地震影響配乱,放射性物質(zhì)發(fā)生泄漏溉卓。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,867評論 3 333
  • 文/蒙蒙 一搬泥、第九天 我趴在偏房一處隱蔽的房頂上張望桑寨。 院中可真熱鬧,春花似錦忿檩、人聲如沸尉尾。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,338評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽沙咏。三九已至,卻和暖如春班套,著一層夾襖步出監(jiān)牢的瞬間肢藐,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,458評論 1 272
  • 我被黑心中介騙來泰國打工吱韭, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留吆豹,地道東北人。 一個月前我還...
    沈念sama閱讀 48,906評論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像痘煤,于是被迫代替她去往敵國和親凑阶。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,507評論 2 359

推薦閱讀更多精彩內(nèi)容