1. 程式人生 > 實用技巧 >【C++入門學習筆記】函式和物件!你需要這一篇文章入門C++!

【C++入門學習筆記】函式和物件!你需要這一篇文章入門C++!

一、本篇要學習的內容和知識結構概覽


二、知識點逐條分析

1. 混合型語言

C++原始檔的副檔名為.cpp, 也就是c plus plus的簡寫, 在該檔案裡有且只能有一個名為main的主函式, 它作為程式的入口. 因為這個主函式的存在, 所以C++被稱為混合型語言.

2. C++語言當中的註釋

第一種: 單行註釋,從 // 開始到本行結束.

像這樣:

       // 下面的程式碼是求最大值

第二程: 多行註釋,從 /* 開始到 */ 結束.

像這樣:

       /*

       函式功能: 下面的程式碼是用來求最大值的

       函式描述: 接收兩個整型引數, 返回它倆的最大值

       
*/

3. 輸入物件和輸出物件

我們在使用這兩個物件前, #include <iostream> 先引入這個標頭檔案, 並且使用名稱空間: using namespace std; 之後就可以使用這兩個物件啦!

a. 輸入物件: cin, 輸出物件cout.

像這樣:

int a = 0; // 定義一個整型變數a, 賦初值為0

cout << a; // 列印這個值

cin >> a; // 使用cin物件獲取使用者輸入的值賦值給a

cout << a; // 使用cout物件輸出變數a的值

b. 當然我們也可以輸出字串:

cout << “我是被輸出的字串!”;

c. 我們還可以字串加變數值的拼接輸出:

cout << “使用者輸入的值為: ” << a << endl;

d. 我們也可以在輸出的時候進行換行

第一種: cout << “\n”;

第二種: cout << endl;

這兩個的效果是一樣的.

4. 使用名稱空間

引入標頭檔案的方式有兩種, 系統標頭檔案用<>, 自定義標頭檔案用””

第一種: 帶.h引入標頭檔案

#include

第二種: 使用名稱空間引入標頭檔案

#include <iostream>

using
namespace std;

5. 物件的定義和初始化

       int a = 0;

       int z(0);

上面兩句話是等價的, 作用: 申請記憶體空間, 給記憶體空間命名, 向這塊記憶體中寫入資料.

不過我們一般都使用第一種方式.

6. 函式原型及其返回值

函式及變數的使用規則: 先宣告, 後使用. 變數有時也可以邊宣告, 邊使用.

我們在main函式後面定義的函式, 如果想要在main函式內使用, 就必須在main函式前宣告, 告訴編譯系統, 後面有這個函式, 我要用啦! 當然也可以把函式定義放在main函式之前, 這樣就不用宣告啦!

像這樣:

#include <iostream>

using namespace std;
// 宣告函式

// 第一個int為返回值型別, 也稱之為函式型別, 第二, 第三個int為引數型別

int getMax(int, int);

int main(int argc, const char * argv[]) {

    // insert code here...

    int a = 5;

    int b = 8;

// 函式宣告之後, 才可使用

    int result = getMax(a, b);

    cout << result << endl;

    return 0;

}

// 定義函式

int getMax(int a, int b) {

    if (a > b) {

        return a;

    } else {

        return b;

    }

}

  

如果函式不需要返回值, 可以用void標識, 一旦使用void, 函式體不再使用return語句, 但是可以使用return;直接結束函式的執行, 返回到呼叫函式.

像這樣:

void sayHello() {

    count << “I am a student!” << endl;

    return; // 後面的語句不再執行, 退出函式

    count << “I am 8 years old!” << endl;

}

7. const修飾符及預處理程式

a. const修飾的變數,

在以後值不可再更改, 所以我們稱之為符號常量, 也必須在宣告時對符號常量進行初始化.

像這樣:

       const int a = 5;

       a = 10; // 錯誤, 符號常量a不可更改

但是用extern修飾的外部變數, 可以不用進行初始化.

像這樣:

       extern const int b; // 其中b為其它檔案定義的外部符號常量

b. 用於代替巨集定義

       #define M_PI 3.14   // 巨集定義是直接進行替換, 沒有型別檢查

       const float M_PI 3.14;   // 而const定義的符號常量, 是有型別檢查的, 更安全.

c. 預處理有有一種: 巨集定義, 條件編譯, 檔案包含

第一種, 巨集定義:在編譯期間, 將出現巨集的地方替換為指定程式碼

第二種, 檔案包含:一個檔案把另一個檔案的內容包含進來.

像這樣:

 #include <iostream> using namespace std;

第三種, 條件編譯

像這樣:

       #ifndef _LIBCPP_HAS_NO_STDIN

       extern _LIBCPP_FUNC_VIS istream cin;

       extern _LIBCPP_FUNC_VIS wistream wcin;

       #endif

一般用於系統控制, 跟我們程式碼中的if..else是一樣的, 用得比較少

8. 程式碼書寫基本規範

a.括號緊跟在函式名後面, 我們見到名字加括號, 很直觀的知道這是一個函式

b.for, while等關鍵詞和括號之間要用一個空格隔開

c.運算子左右各留一個空格

d.在引數列表中, 每個逗號後面加空格, 這樣顯得更清晰

e.合理新增空行和註釋, 讓程式碼以組的形式和功能塊的形式呈現, 這樣就更完美啦!

我們每每在接觸一門新的語言的時候, 關注點總是放在關鍵字, 語法結構, 函式(方法)使用上, 而我們學習一個新的語言要學會得應該是基本素養和基本概念, 以及語言當中所包含的自己所特有的思想。

如果你也很想學程式設計,可以來我的C語言/C++程式設計學習基地【點選進入】!

還有(原始碼,零基礎教程,專案實戰教學視訊)!帶你入個門還是簡簡單單啦~

涉及:遊戲開發、課程設計、常用軟體開發、程式設計基礎知識、黑客等等...