C/C++ Programming - Part2  (2014 Spring Advancd Class)

Goals

(1) Understand the fundamental conceptions of C/C++ language, including data type, control statements, functions, array, pointer, …;
(2) Understand the principles of process-based/object-oriented software design, including Functions, Points, Arrays/ Class, object, Inheritance, …;
(3) Have the basic ability and skill in C/C++ basic programming;
(4) Know about the background of software programming and software engineering.


Classroom and Laboratory

(1) Every Thursday Morning in Week 1-6: Lecture hour 1-4, Laboratory N1-East308
(2) Programming Test: in Week 6
(3) Paper Test: in Week 8
(4) Project Report in Week 10


Syllabus

Week

Type

Date

Lecuture

Codes

1

Lecture13

14-02-20

Topic: Difference between C and C++[slides]
Textbook: Chapter15.

Book codes: Chapter 15
Sample code: reference vs. pointer

2

Lecture14

14-02-27

Topic: Introduction to object-oriented programming [slides]
Textbook: Chapter16-17

Book codes: Chapter 16, Chapter 17
Sample code: myclass.zip

3

Lecture15

14-03-06
Topic: Advances in C++ Class[slides]
Textbook: Chapter18
Book codes: Chapter 18
Sample code: class member

4

Lecture16

14-03-13 Topic: Operator Overload [slides]
Textbook: Chapter19

Book codes: Chapter 19
Sample code: operator.zip,

5

Lecture17

14-03-20 Topic: Inheritance [slides]
Textbook: Chapter20
Book codes: Chapter 20
Sample code: inheritance.zip

6

Lecture18

14-03-27 Topic: Polymorphism [slides]
Textbook: Chapter21
Book codes: Chapter 21
Sample code: polymorphism.zip
7 Programming Test
8 Paper Test
10 Project Report Submission

 

Reference Textbooks

[1] H.M.Deitel, P.J.Deitel, C How to program, 5th ,Pearson 2005
[2] H.M.Deitel, P.J.Deitel, C++ How to program  [digital version download], 5th ,Pearson 2005
[3] 谭浩强,《C++程序设计》,清华教育出版社,2004.6
[4] 郑莉 等,《C++ 语言程序设计》,清华大学出版社,2005.7
[5] 钱能 等,《C++ 程序设计教程》(第2版),清华大学出版社,2005.9

 

Resources

(1) Textbook[1] source code [download]
(2) Reference book for standard C/C++ functions [download]
(3) Development tool: Virsual C++ 6.0 for teaching and study [download]
(4) Development tool: Virsual C++ Assistant [download]
(5) Development tool: Code Blocks [download] and in Chinese language patch [download]

Feedback

If you have questions, welcome write e-mail to liuwei@hust.edu.cn.
Due to the large number of spam e-mails, please add ``[C++][Question]'' as the prefix in the title of your e-mail.
That will help me to identify your e-mails, thank you.


<Last Updated: 2014-02-20>