See our latest COVID updates.

C++ Programming | CMPR.X404

C++ Programming | CMPR.X404

This course covers object-oriented programming using modern C++. Because most automation, embedded applications, gaming, and many large data processing applications are written in C++, it is essential that software developers understand and master it. Hardware engineers are increasingly using C++ and OOP in system verification tasks. This course offers an excellent foundation in developing optimized modern C++ applications. The participants will learn to write faster and modular code, and the debugging techniques, for real-world applications. There will be assignments and exercises to accompany the lectures.

Learning Outcomes
At the conclusion of the course, you should be able to

  • Apply object oriented concepts to software development problems using modern C++
  • Understand and use the basic programming constructs of C++
  • Manipulate various C++ data types, such as arrays, strings, and pointers
  • Write C++ code using principles of object-oriented programming
  • Understand design patterns in C++ using singleton pattern
  • Manage memory appropriately, including proper allocation/deallocation procedures using unique and smart pointers

Topics Include

  • Principles of object-oriented analysis and design
  • Stream classes for input/output and to read/write files
  • User defined data types using structures and classes
  • Declarations of identifiers, pointers, function pointers and references
  • Reuse code and extend existing data types through inheritance
  • Memory management and dynamic array declarations
  • Create class/function templates and understand STL
  • Use static member variables and static member functions
  • Declare friend functions and friend classes
  • Function overloading and operator overloading
  • Polymorphism concept using virtual function
  • Understand exceptions handling techniques using try/catch syntax

Note(s) Students must have access to a 2017 or above C++ compiler.

Skills Needed Experience with a high level programming language such as C/Java/Python.

Have a question about this course?
Speak to a student services representative.
Call (408) 861-3860
FAQ
ENROLL EARLY!

Prerequisite(s):

Sections Open for Enrollment:

Open Sections and Schedule
Start / End Date Quarter Units Cost Instructor
05-13-2023 to 07-29-2023 3.0 $980

Ajay K Mittal

Enroll

Final Date To Enroll: 05-13-2023

Schedule

Date: Start Time: End Time: Meeting Type: Location:
Sat, 05-13-2023 9:00 a.m. 12:00 p.m. Live-Online REMOTE
Sat, 05-20-2023 9:00 a.m. 12:00 p.m. Live-Online REMOTE
Sat, 06-03-2023 9:00 a.m. 12:00 p.m. Live-Online REMOTE
Sat, 06-10-2023 9:00 a.m. 12:00 p.m. Live-Online REMOTE
Sat, 06-17-2023 9:00 a.m. 12:00 p.m. Live-Online REMOTE
Sat, 06-24-2023 9:00 a.m. 12:00 p.m. Live-Online REMOTE
Sat, 07-08-2023 9:00 a.m. 12:00 p.m. Live-Online REMOTE
Sat, 07-15-2023 9:00 a.m. 12:00 p.m. Live-Online REMOTE
Sat, 07-22-2023 9:00 a.m. 12:00 p.m. Live-Online REMOTE
Sat, 07-29-2023 9:00 a.m. 12:00 p.m. Live-Online REMOTE

What students are saying

"The instructor presented a wide degree of material with great teaching methods. He was available to students beyond the class hours. In-class practice, homework, & the final enabled us to apply accumulated knowledge in C++ throughout the course"
— Tom T. Hua Embedded Systems Engineer