【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> usingnamespace 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++程式設計學習基地【點選進入】!
還有(原始碼,零基礎教程,專案實戰教學視訊)!帶你入個門還是簡簡單單啦~
涉及:遊戲開發、課程設計、常用軟體開發、程式設計基礎知識、黑客等等...