單元地圖
¶前置知識
- ✓ 迴圈的各種寫法(上冊第四單元,特別是 4.3)
- ✓ 函式與參數傳遞(上冊 7.1、7.5)
- ✓ vector、iterator 與 pair(下冊 10.2、10.5、10.11)
- ✓ 指標與取址運算子(下冊 11.2)
- ✓ sort 與自定義比較函式(下冊 11.4、11.6)
¶學習成果
本單元結束後,你將能夠:
- ✓ 說出
bits/stdc++.h的優缺點,判斷什麼場合能用它 - ✓ 說出
std::前綴與using namespace std;的關係,看得懂不寫using namespace std;的程式碼 - ✓ 用
auto讓編譯器推型態,並說出它適合與不適合的場合 - ✓ 宣告參考(別名),用
const參考參數避開大容器的複製成本 - ✓ 用 range-based for 迴圈簡潔地掃過陣列、vector 與 string——要改元素時記得加
& - ✓ 用結構化綁定一句話拆開 pair,讓
vector<pair>的程式碼清爽起來 - ✓ 看懂條件運算子
a ? b : c與逗號運算子,並知道後者看得懂就好 - ✓ 用
using幫又臭又長的型態取短別名 - ✓ (延伸)看懂 lambda 運算式,把 sort 的比較函式寫在使用處
- ✓ (延伸)看懂
#define巨集是文本取代,說出括號雷與「少用為妙」的理由 - ✓ 用競程標準開場白與
'\n'讓 cin、cout 快起來,並說出加速後的禁忌