|
課程摘要 |
第一週 (2/16) |
-
課程大綱, 參考書籍, 線上資料,
-
C 語法複習 (basic data type, array type, for/while/break/continue,
if/switch control statements, struct, typedef, pointers)
-
demonstration of VC 6, IDE, command line (vcvars32.bat, cl), UNIX: gcc, g++
-
typedef usages
-
以 C++ 製作物件導向程式的核心概念:(物件, 抽象化界面, 封裝), 繼承, 多型
-
Homeworks:
|
第二週 (2/23) |
-
Making and Using Objects
-
C++ Console I/O
-
Homeworks:
- review Chapter 2
- File I/O
- read Chapter 3, 4
- quiz next week
|
第三週 (3/1) |
-
objects, design according to the interface, abstraction, design by contract
-
Abstract Data Type
-
Objects and Classes
-
下週 (3/8) 交第一次作業
-
File I/O
-
Homeworks:
|
第四週 (3/8) |
-
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),
-
reference,
-
function signature and name mangling,
-
parameter defaults
-
Abstraction and Interfaces
-
Homeworks:
|
第五週 (3/15) |
-
Quiz #1 solutions
-
Assignment #1 Problems
-
objects, design according to the interface, abstraction, design by contract
-
Procedural Programming Example 6Balls,
WaveRecord.h,
WaveRecord.cpp
-
Object Oriented Programming Example 3Bags
-
Homeworks:
|
第六週 (3/22) |
-
Constructors and Destructors
-
Common C/C++ Memory Errors, html version
-
Homeworks:
|
第七週 (3/29) |
-
Formal Introduction to OOP
-
Basic Object Design
-
UML 語法介紹, 參考資料
-
Homeworks:
|
第八週 (4/5) |
春假
|
第九週 (4/12) |
期中考 (10:20-12:00)
|
第十週 (4/19) |
-
期中考講解, matrix1.cpp, matrix2.cpp,
matrix.dat
-
More Classes (Object composition and ctor, this pointer, return pointers)
-
Copy Constructor
|
第十一週 (4/26) |
-
Assignment Operator and The Big Three
-
Friend Classes and Friend Functions
-
Basic Object Design
|
第十二週 (5/3) |
-
Basic Object Design
-
Operator Overloading
-
Formal Introduction to OOP
|
第十三週 (5/10) |
-
Inheritance
-
Proper Inheritance
|
第十四週 (5/17) |
-
Polymorphism
|
第十五週 (5/24) |
-
Polymorphism continued
-
Advanced Inheritance
|
第十六週 (5/31) |
-
Template
-
Exception
|
第十七週 (6/7) |
-
State Diagram
|
第十八週 (6/14) |
-
UML 語法介紹, 參考資料
|
第十九週 (6/21) |
期末考 (10:20-12:00)
|