首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> C++ >> C++ 入門

C++ 入門核心筆記:從輸入輸出到標準庫容器

     編輯:C++ 入門

前言

C++ 作為一門強大的系統級程式語言,其標準庫(STL)提供了豐富的工具。本文整理了 C++ 入門階段的核心知識點,涵蓋輸入輸出流、字串處理、變量定義、流控制、迴圈、向量容器與異常處理,幫助初學者快速建立知識框架。

一、輸入輸出流與命名空間

使用 cout 和 cin 需包含 <iostream> 標頭檔。為了避免每次都寫 std:: 前綴,常使用 using namespace std; 引入標準命名空間。若不使用此指令,則需完整寫出 std::cout。

二、變量定義與緩衝區機制

C++ 允許在程式碼任何位置定義變量(就近定義),提升了可讀性。輸出操作預設會將數據存放在緩衝區中以優化效能,緩衝區會在以下情況自動刷新:

  • 緩衝區已滿
  • 請求從標準輸入讀取數據(如 cin)
  • 程式正常結束或主動呼叫 flush / endl

三、字串初始化與運算符重載

string 類支援多種初始化方式:

const string hao = "hello" + "!!"; // 字串常量相加
const string hu = "hu" + hao;      // 字串對象與常量相加,運算符重載體現

注意:不能直接用 + 連接兩個字串常量(如 "a" + "b"),至少一方必須是 string 對象。這正是運算符重載的典型應用——同一運算符根據操作數類型不同表現出不同行為。

四、函數重載與 const 關鍵字

函數重載允許同名函數通過參數列表差異實現不同功能。const 修飾變量時,表示其值在生命週期內不可修改,且必須在定義時初始化。

五、流控制器與格式化輸出

  • endl:換行並刷新緩衝區
  • setprecision(n):設定浮點數有效位數

六、迴圈範圍與變量作用域

for (int i=2; i<5; ++i) 形成左閉右開區間 [2, 5),取值 2,3,4。若變量在 for 初始化語句中定義,其作用域僅限於迴圈內部。

七、vector 容器與算法

vector 是動態陣列容器,支援隨機存取:

vector<double> homework;          // 定義 double 型向量
sort(homework.begin(), homework.end()); // 非遞減排序,平均 O(N log N)

存取元素用 homework[mid],邊界檢查建議搭配 at()。

八、異常處理機制

當函數無法正常返回值時,可拋出異常:

if (size == 0)
    throw domain_error("median of an empty vector");

異常會沿呼叫堆疊向上傳播,直到被 catch 捕獲或導致程式終止。異常對象攜帶錯誤資訊供處理者使用。

九、多返回值的慣用做法

C++ 函數只能返回單一值,需返回多值時常用:

  • 返回值表示成功/失敗狀態
  • 通過引用參數或指標參數輸出結果數據

總結

掌握上述基礎概念是深入學習 C++ 的基石。建議多動手實驗緩衝區行為、運算符重載細節與異常傳播機制,結合《C++ Primer》系統學習。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved