Skip to Content
Home /  Courses And Programs / C/C++ Programming IV: Advanced Programming with Objects

Expanding on serveral topics in C++ Programming III,

this course encompasses object-oriented analysis, design, and programming. Additionally, advanced memory management, stream and file I/O, persistence, multiple inheritance, advanced polymorphic programming, templates, STL libraries, C++ style, and efficiency will also be covered.

Course Highlights:

  • Generic programming and the C++ standard library
  • Exception, safety issues and techniques
  • The transactional memory model
  • Class design and inheritance
  • Compilers, names and interfaces
  • Memory management
  • Traps, pitfalls and anti-idioms
  • Functors and iterators
  • Control flow and multiple inheritance

Course Learning Outcomes:

  • Gain a foundation for writing efficient, safe C++ code
  • Learn how to use STL libraries
  • Understand memory pitfalls in C++
  • Know how to expand the C++ memory model
  • Utilize object-oriented for analysis and design
  • Apply multiple inheritance to an application
  • Understand how streams work
  • See how to persist objects via streams
  • Gain experience following C++ guidelines
  • Identify potential bugs in code before they occur

Software: Students must have access to program development tools. Free IDE downloads students commonly use for this program include "Visual Studio Community" for Windows, "Xcode" for macOS, and "Code::Blocks" for Linux, Windows, and macOS.

Course Materials: The instructor will provide students with a pdf copy of his custom course reader to be used for the duration of this course. There is no other textbook required for this course.

Course Typically Offered: Online in Winter, Summer, and Fall quarters.

Prerequisite:  Must complete CSE-40477 C/C++ Programming III: Intermediate Programming with Objects or possess a solid understanding of the C++ programming language syntax and a high level understanding of the C++ standard library (streams, containers, iterators, and algorithms).

Next Step: After completing this course, consider taking CSE-40049 Data Structures and Algorithms in C/C++ to continue learning.

Contact: For more information about this course, please email infotech@ucsd.edu.

Course Number: CSE-40478
Credit: 3.00 unit(s)
Related Certificate Programs: C/C++ Programming