| |
Mar 17, 2026
|
|
|
|
|
CSC 2212 - Procedural and Object-Oriented C++3 lecture hours 2 lab hours 4 credits Course Description This course introduces students to the C++ programming language. Students write programs using object-oriented and procedural abstractions, standard libraries, and low-level constructs motivated by the C language. The course covers data representation, basic machine architecture, instruction execution, memory management, the implementation of high-level programming constructs at the machine level, and the impact of C++’s type system on readability, reliability, and efficiency. Prereq: CSC 1110 (quarter system prereq: CS 2852) Coreq: CSC 1120 or CSC 1020 Note: None This course meets the following Raider Core CLO Requirement: None Course Learning Outcomes Upon successful completion of this course, the student will be able to:
- Design and implement robust C++ programs using classes, inheritance, operator overloading, polymorphism, dynamic memory allocation, and the Standard Template Library
- Implement C++ programs with file I/O for a Unix-based operating system and deploy them via virtual machines
- Design and implement small procedural programs in C++ and C
- Apply debugging tools and techniques to identify, diagnose, and resolve issues in C++ implementations
- Employ make files and preprocessor directives to support project configuration through conditional compilation
- Explain how C++ typing rules impact efficiency, reliability, and readability, and how those rules differ from the rules of other popular languages
- Describe the transformation of code from a high-level language, such as C++, to machine-level instructions
- Analyze and explain how variables are allocated in memory, the relationship between variables and pointers, and the scope and lifetime of variables
- Apply and evaluate argument passing by value, reference, and address
- Explain how unsigned integers, signed integers, and floating-point values are represented by processors and how that representation impacts performance
- Write fragments of assembly code and explain core computer organization including machine instruction execution, registers, memory layout, caches, pipelines, and data paths
Prerequisites by Topic
- Object-oriented programming
- Java programming
Coordinator Dr. Robert Hasker
Add to Portfolio (opens a new window)
|
|