|
課程摘要 |
第一週 (2/25) |
- 課程簡介, 課程大綱,
參考書籍, 線上資料
- 以 C++ 製作物件導向程式的核心概念:(物件, 抽象化界面, 封裝), 繼承, 多型
- C++ Console I/O
- Homeworks:
- File I/O
- 預習實習二
- read Chapter 2, 特別注意 99 頁 string 和 105 頁 vector 的用法
|
第二週 (3/4) |
- Making and
Using Objects
- Homeworks:
|
第三週 (3/11) |
- C++ as a better C:
- single line comment,
- struct, enum, union tags are type names,
- new iostream library (object oriented usage, type sensitive
usage),
- cooperating with stdio (ios::sync_with_stdio(),
- variable declaration on the fly,
- definition vs. declaration (variable and function),
- function signature and name mangling,
- parameter defaults
- Objects and Classes
- Homeworks:
|
第四週 (3/18) |
- C 指標 (pointer) 語法複習
- C++ as a better C: (cont'd)
- #define vs. const variables
- new and delete
- stricter typing system
- typedef
- reference
- global scope resolution operator
- bool
- explicit type conversion
- Assertion is strictly for programmer instead of users
- Procedural Programming Example 6Balls
- Object Oriented Programming Example 3Bags
- 兩星期後 (4/1) 交第一次作業
- Homeworks:
|
第五週 (3/25) |
- Objects and Classes (cont'd)
- Constructors and Destructors
- Quiz #1
- Homeworks:
- review Chapter 4, 5
- read Chapter 6
|
第六週 (4/1) |
- Assignment #1 due
- Constructors and Destructors
(cont'd)
- Procedural Programming Example WaveRecord.h,
WaveRecord.cpp
- Homeworks:
- Appendix A, B
- read Chapter 6 Initialization & cleanup
|
第七週 (4/8) |
Spring Break |
第八週 (4/15) |
- Assignment
#1 Problems
- Common C/C++ Memory
Errors, html version
- Homeworks:
|
第九週 (4/22) |
- 期中考 (9:20-10:20)
- More Classes (Object
composition and ctor, this pointer, return pointers)
- The Big Three: Dtor, Copy
Ctor, and Assignement Operator
- Homeworks:
- review Chapter 11 copy ctor
|
第十週 (4/29) |
- 期中考講解
- Friend Classes and Friend Functions
- Basic Object Design
- Homeworks:
|
第十一週 (5/6) |
- Basic Object Design
(cont'd)
- UML 語法介紹, 參考資料
- Operator Overloading
- Homeworks:
- read Chapter 12 operator overloading
|
第十二週 (5/13) |
- Inheritance
- Proper Inheritance
- Homeworks:
|
第十三週 (5/20) |
- Polymorphism
- Homeworks:
|
第十四週 (5/27) |
- Advanced Inheritance
- Template
- Homeworks:
- review Chapter 14 (page 604-623)
- review Chapter 16
- 負面思考: OOP 真的有好處嗎? 1,
2, 3
- Quiz #2 (6/3)
|
第十五週 (6/3) |
- Exception
- Homeworks:
|
第十六週 (6/10) |
|
第十七週 (6/17) |
|
第十八週 (6/24) |
期末考 (10:20-12:00)
|