Catalog 2017-2018 
    Mar 19, 2018  
Catalog 2017-2018

CSD 233 C++ Programming

5 credits

This class teaches C++ programming language, its specific features, and the advantages they present for software development. The topics include pointers and memory management, reference parameters, c-strings and arrays as primitive data types, class inheritance, polymorphism, encapsulation, use of virtual functions and templates, and exceptions.

Prerequisites: CS 143  as either a prerequisite or corequisite

Students who completed CS 143 meet the prerequisite.

Quarters Offered: Winter

Student Outcomes/Competencies:
Upon successful completion of this course students will be able to:

  • Use correct C++ syntax when writing programs
  • Name and use C++ data types
  • Explain the difference between pass-by-value and pass-by-reference function parameters in C++, and use pass-by-reference parameters to return values from functions
  • Explain the concept of pointers and dynamic memory management in C++, and use pointers effectively in programs
  • Explain and illustrate the advantages and challenges direct memory access presents for programmers in C++, and demonstrate the use of safe memory management techniques
  • Use arrays and c-strings in programs
  • Use class inheritance, polymorphism, and virtual functions in C++
  • Justify the need for exceptions, write exception-throwing and exception - handling code, and create exception classes 
  • Create template functions and classes in C++
  • Use C++ STL library
  • Implement data structures such as lists and trees using pointers
  • Write medium-sized programs in C++

Total Hours: 60 Lecture Hours: 40 Lab or Clinical Hours: 20