|
課程摘要 |
第一週 (2/19) |
- 課程簡介,
課程大綱, 參考書籍,
線上資料
- 以 C++ 製作物件導向程式的核心概念:(物件, 抽象化界面, 封裝), 繼承,
多型
- Abstract
Data Type: (b&w):
[Data Type + Operation] common part independent of all implementations
- Homeworks:
|
第二週 (2/26) |
- C++
Console I/O (b&w):
an object oriented I/O library
- Making
and Using Objects (b&w)
- Homeworks:
|
第三週 (3/5) |
- Making
and Using Objects (b&w)
- A
"Better" C Program (b&w),
codes
- Objects
and Classes (b&w)
- Homeworks:
|
第四週 (3/12) |
- Objects
and Classes (b&w)
- C++
as a better C (b&w)
:
- 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
- #define vs. const variables
- new and delete
- Homeworks:
|
第五週 (3/19) |
- C++
as a better C (b&w)
: (cont'd)
- stricter typing system
- typedef
- reference
(b&w)
- global scope resolution operator
- bool
- explicit type conversion
- Reference
(b&w)
-
Complex C/C++ Type Definitions (b&w)
- Dynamic
allocation of 2-dimensional array in C (b&w)
- Procedural Programming Example 6Balls
- Object Oriented Programming Example
3Bags
Example (b&w),
codes
- Homeworks:
|
第六週 (3/26) |
- Object Oriented Programming Example 3Bags
Example (b&w)
(cont'd)
- Constructors
and Destructors (b&w)
- Homeworks:
- Example program wiritten in C++ but not
OOP: WaveRecord.h, WaveRecord.cpp
- review Chapter 4, 5
- read Chapter 6 Initialization & cleanup
- Assertion
(b&w) error
is strictly for programmers instead of users
|
第七週 (4/2) |
- More
Classes (b&w)
(Object composition and ctor, this pointer, return pointers)
- Common
C/C++ Memory Errors (b&w),
html version
- Homeworks:
|
第八週 (4/9) |
- Common
C/C++ Memory Errors (cont'd) (b&w),
html version
- The
Big Three: Dtor, Copy Ctor, and Assignment Operator (b&w)
- Homeworks:
|
第九週 (4/16) |
- Chapter
1: Introduction to OOP (b&w)
-
Friend Classes and Friend Functions (b&w)
|
第十週 (4/23) |
- C/C++
two-dimensional array (b&w)
-
Assignment Operator (b&w)
- Basic
Object Design (b&w)
- Homeworks:
|
第十一週 (4/30) |
期中考 (10:00-12:00), 期中考參考解答, 成績分佈 1,
2, 3,
Suggestions |
第十二週 (5/7) |
- 期中考講解
- Operator
Overloading (b&w)
- Homeworks:
- 5/23 (四) 24:00 交作業二
(作業網頁於星期四講解)
- read Chapter 12 operator overloading
- 星期三, 星期四,
4:00-6:00 補救教學
|
第十三週 (5/14) |
- Operator
Overloading (b&w)
(cont'd)
- Homeworks:
|
第十四週 (5/21) |
-
Inheritance
(b&w)
-
Advanced Inheritance (b&w)
- Polymorphism
(b&w)
- Homeworks:
- review Chapter 14
- review Chapter 15
|
第十五週 (5/28) |
- Polymorphism
(b&w)
- Homeworks:
- review Chapter 14
- review Chapter 15
|
第十六週 (6/4) |
- Template
(b&w)
- Homeworks:
- review Chapter 14 (page 604-623)
- 負面思考: OOP 真的有好處嗎? 1,
2, 3
- review Vol2, Chapter 1
|
第十七週 (6/11) |
- Exception
(b&w)
- Homeworks:
|
第十八週 (6/18) |
期末考 (9:30-12:00)
教室分配表
請提早 10 分鐘到 INS105 找你的座位
查詢自己的期末考考卷與成績
(請至作業欄選取期末考)
|