21天學通C++(C++程式的組成部分)

  • 2020 年 7 月 25 日
  • 筆記

C++程式被組織成類,而類由成員函數和成員變數組成。

本章學習:

  1)C++程式的組成部分。

  2)各部分如何協同工作。

  3)函數及其用途。

  4)基本輸入輸出操作。

 

C++程式劃分為兩個部分,以#大頭的預處理器編譯指令以及以int main()打頭的程式主體。

std::cout << ” ” << std::endl;

要插入文件而不是控制台,可將插入運算符<<用於std::fstream(而不是std::cout)。

程式運行成功時返回0,並在出現錯誤時返回-1.

 

命名空間的概念:

標準(std)名稱空間。

命名空間是給程式碼指定的名稱,有助於降低命名衝突的風險。

在函數無需做任何決策,也無需返回成功/失敗狀態時,可將其返回類型聲明為void,這個函數沒有返回值。

使用std::cin和std::cout執行基本輸入輸出操作。

例如:cin >> inputName;

getline().

 

第3章,使用常量和變數。

目的:1)如何聲明和定義變數和常量。

2)如何給變數賦值以及操縱這些值。

3)如何將變數的值顯示到螢幕上。

4)如何使用關鍵字auto和constexpr。

 

臨時存儲器被稱為隨機存儲器(RAM)。

使用列表初始化避免縮窄轉換錯誤。

使用auto自動判斷類型。在變數類型非常複雜的時候可以使用。

使用typedef替換變數類型。

定義常量後,就不能直接修改它的值。直接給常量賦值會導致編譯錯誤。常量也佔用記憶體空間,並使用名稱標識為其預留的空間地址,但不能覆蓋該空間內容。

1)字面常量。2)使用關鍵字const聲明的常量。3)使用關鍵字constexpr聲明的常量表達式。4)使用關鍵字enum聲明的枚舉常量。5)使用#define定義的常量。

 

 

既然可以使用常規變數代替常量,為何還要定義常量?

通過聲明常量(尤其是使用關鍵字const時)可告訴編譯器,其值時固定的,不允許修改。這樣編譯器將確保不給常量賦值,即便另一位程式設計師接手您的工作,不小心試圖覆蓋常量的值。可提高編程品質

 

為何應給變數賦初值?

如果不初始化,就無法知道變數包含的初始值,在這種情況下,初始值將是給變數預留的記憶體單元內容。

 

auto是根據變數的初始值推斷其類型的,使用auto沒有初始化,就無法通過編譯!!!