課程Github:
https://github.com/QQBoxy/2018vc
Example 1 - Vector
https://github.com/QQBoxy/2016vc/blob/master/vector/vector.cpp
Vector功能:
檢查是否為空 | v.empty(); |
直接將v清空 | v.clear(); |
檢查目前大小 | v.size(); |
檢查最大容量 | v.maxsize(); |
檢查目前容量 | v.captacity(); |
清除所有內容 | v.clear(); |
清除指定元素 | v.erase(v.begin()); v.erase(v.end()-1); |
讀取並刪除最後一元素 | v.pop_back(v.size()-1); |
重新設定大小 | v.resize(5); |
Example 2 - Eception
https://github.com/QQBoxy/2016vc/blob/master/exception/exception.cpp
Example 3 - Simple Factory Pattern 工廠模式
https://github.com/QQBoxy/2015vc/blob/master/simpleFactoryPattern/main.cpp
FYI:C++、C#
Example 4 - Straegy Patternt 策略模式
https://github.com/QQBoxy/2015vc/blob/master/strategyPattern/main.cpp
FYI:C++、C#
Example 5 - Default Adapter 適配器
https://github.com/QQBoxy/2015vc/blob/master/defaultAdapter/main.cpp
FYI:C++
程式撰寫習慣:
- 先規劃流程(流程圖、Pseudocode)
- 容易閱讀(變數命名、寫註解)
- 建立模組化程式(風格統一)
- 別重造輪子(Github、Code Project)
- 善用版本控制(git、Bitbucket、Sourcetree)
FYI:
指標傳遞補充
https://ccuboxy.blogspot.com/2013/07/advanced-vc-chapter-2.html
作業:
撰寫一隻三角網格STL檔案的轉檔工具,
具備以下功能:
1. 能夠拖拉檔案後,顯示兩個功能選項供選擇。
2. 功能選項1: ASCII格式檔案 轉為 Binary格式檔案。
3. 功能選項2: Binary格式檔案 轉為 ASCII格式檔案。
4. 請使用Class搭配Vector撰寫。
5. 讀取出現意外錯誤時,請顯示問題原因。