There two required textbooks.
Throughout the course I will be assigning reading from these books.
C++ Primer Plus (2nd ed.), Stephen Prata, Waite Group Press,
1995.
[SFU QA 76.73 C153 P73 1995]
Schildt's Windows 95 Programming in C and C++, Herbert Schildt,
Osborne McGraw-Hill, 1995.
[SFU QA 76.76 O63 S37543 1995]
Here are some other books that may be useful for reference. This
list was compiled by
Russ Tront.
C++: The Core Language, Gregory Satir and Doug Brown,
O'Reilly, 1995.
This is a
great gentle introduction to C++ for those who know C, but
it leaves out some of the advanced features.
[SFU QA 76.73 C153 S38 1995]
The Annotated C++ Reference Manual, Margaret A. Ellis and
Bjarne Stroustrup, Addison-Wesley, 1990.
This is the definitive reference for the language
until the international standard for C++ is finalized.
[SFU QA 76.73 C153 E35 1990]
Thinking in C++, Bruce Eckel, Prentice Hall, 1995.
This is a good book on the more intricate details of C++.
[SFU QA 76.73 C153 E247, 1995]
STL Tutorial and Reference Guide, David Musser and Atul Saini,
Addison-Wesley, 1996.
This is a good reference for the Standard Template Library.
[SFU QA 76.73 C153 M874 1996]
The Draft Standard C++ Library, P. Plauger, Prentice Hall,
1995.
This book describes the standard (non-template) library features
like iostream.h and string.h.
[SFU QA 76.73 C153 P47 1995]
The C++ Programming Language, (2nd ed.), Bjarne
Stroustrup, Addison-Wesley, 1991.
The original general book by the designer of C++.
[SFU QA 76.73 C153 S77 1991]
The Design and Evolution of C++, Bjarne Stroustrup,
Addison-Wesley, 1994.
A retrospective of the design, evolution, and reasons for many
of the language design decisions.
[SFU QA 76.73 C153 S79 1994]
Design and Coding Reusable C++, Martin Carroll and
Margaret Ellis, Addison-Wesley, 1995.
One of the great traits of C++ is that you can write very
reusable code. This book emphasizes the things to be careful
of so that your code will be easily reusable.
[SFU QA 76.73 C153 C39 1995]
Marking Scheme
4 assignments
35%
1 midterm
20%
1 final
45%
The percentage grade received for the midterm exam may be replaced
by the percentage grade received for the final exam, if this will
increase the overall grade.
On both assignments and exams, clarity, simplicity, and organization
will be taken into consideration when grading, as well as correctness.
Students must attain an overall passing grade on the weighted average of
exams in the course in order to obtain a clear pass (C or better).
Exams
Midterm: Wednesday, October 22, 1997, in class.
Final: Wednesday, December 3, 1997, 8:30-11:30am.
(This is unofficial. Click
here
for the official time.)
Any difficulties in attending on these dates should be reported to
the instructor before the end of the second week of classes.
Students must bring their SFU student identification card to each exam.
During each exam, each student is required to complete a signature card
and submit it and the exam booklet(s) at the end of the exam. Failure
to do so may result in that student's exam being nullified.
Assignments
There will be 4 assignments.
Assignments are to be handed in at the beginning of the class
on the due date. Assignments which are handed in after the lecture
has started will be counted as late.
Late assignments will be penalized 10% for one day late and
20% for two days late. Assignments more than two days late will not
be accepted.
There will be no extensions on assignment due dates, unless there
are extenuating circumstances. The instructor will be the judge as
to whether circumstances are extenuating.
Students may discuss programming assignments with other students, but the work
they submit must be their own. As a rule of thumb, a student should not leave
a discussion with anything in writing. Any notes that are taken while talking
to other people should be thrown away, since knowledge learned is in the head,
and not on the paper.
Course Material
Students will be reponsible for knowing material presented in
class and material found in the required reading.
Computers to Use
Students may use the computers in Academic Computing Services
Assignment Lab (AQ 3144). These computers are running Windows NT
Workstation 4.0. We will be using the Borland C++ 5.0 compiler.
Email
Students are encouraged to check their email regularly (once a day is
recommended). The instructor and the TAs will periodically send
important information to the class using email.