COMP345 - fall 2019
From Dr. Joey Paquet Web Site
Contents |
Course Description
COMP 345 - Advanced Program Design with C++ (4 credits)
Prerequisite: COMP352 previously or concurrently. Introduction to C++. I/O with stream classes. Pointers and their uses. TheStandard Template Library (STL): containers, algorithms, iterators, adaptors, function objects. Class design: constructors, destructors, operator overloading, inheritance, virtual functions, exception handling, memory management. Advanced topics: libraries, locales, STL conventions, concurrency, template metaprogramming. Applications of C++: systems, engineering, games programming. Project. Lectures: three hours per week. Laboratory: two hours per week.
Course Schedule and Contacts
component | day | time | location | instructor | e-mail address | web |
---|---|---|---|---|---|---|
lecture D | -T-J--- | 13:15-14:30 | H-415 | Joey Paquet | paquet@encs.concordia.ca | |
instructor's office hours | --W---- | 10:00-12:00 | EV-3-221 | Joey Paquet | ||
lab AX | --W---- | 20:30-22:20 | H-831 | |||
lab BX | --W---- | 20:30-22:20 | H-929 | |||
lab CX | --W---- | 20:30-22:20 | H-917 | Sleiman Rabah | s_rabah@encs.concordia.ca | web page |
lab EX | --W---- | 17:45-19:35 | H-831 | |||
lab FX | --W---- | 17:45-19:35 | H-929 | Vahid Khorasani Ghassab | vahid.khorasani@ieee.org | |
lab GX | --W---- | 17:45-19:35 | H-917 | Zachary Lapointe | zachary.lapointe@mail.concordia.ca | |
marker | Sleiman Rabah | s_rabah@encs.concordia.ca | ||||
marker | Zachary Lapointe | zachary.lapointe@mail.concordia.ca |
Lecture Schedule
wk | date | event | topics | lecture material (tentative) | laboratory material (tentative) |
---|---|---|---|---|---|
week 1 | sep 3, sep 5 |
|
|||
week 2 | sep 10, sep 12 |
|
|
||
week 3 | sep 17, sep 19 |
|
|||
week 4 | sep 24, sep 26 | ||||
week 5 | oct 1, oct 3 |
|
|||
week 6 | oct 8, oct 10 |
|
|
||
week 7 | oct 15, oct 17 |
|
|||
week 8 | oct 22, oct 24 | ||||
week 9 | oct 29, oct 31 |
|
|
||
week 10 | nov 5, nov 7 |
|
|||
week 11 | nov 12, nov 14 |
|
|
||
week 12 | nov 19, nov 21 |
|
|
||
week 13 | nov 26 - nov 28 |
|
|
||
exam week | dec 5 - dec 19 |
|
Course Material and Resources
- Course outline
- teams
- ENCS Electronic Student Submission System
- ENCS Lectures and Labs Schedules
- Source code of all program examples in Walter Savitch's "Absolute C++"
- Source code of all program examples in Daniel Liang's "Introduction to Programming with C++"