C++ Language Fundamentals Training
Date | Version | Country | Location | |
---|---|---|---|---|
Scheduled upon demandOn demand | EXPRESS INTERESTINQUIRE |
Version | Region | |
---|---|---|
24.03 | Online | ENROLL |
21.03 | Online | ENROLL |
Other Versions | Online | EXPRESS INTERESTINQUIRE |
Length: 3 Days (24 hours)
Digital Badges
Course Description
This course provides an introduction to the C++ programming language for those who use C++ for design or verification.
To optimally benefit from this course, you must already have sufficient knowledge of the C programming language to be capable of writing non-trivial C programs.
In this course, you write and execute C++ code that includes C++ classes, member variables and functions, constructors, destructors, inheritance, and polymorphism.
Learning Objectives
After completing this course, you will be able to:
- Write and execute a simple C program
- Organize your programming solution in terms of objects and their interactions
- Write and execute a simple C++ program with classes and objects
- Define class constructors to initialize class variables during object construction
- Define class destructors to return unneeded memory to the heap
- Define aliases for variables by defining reference variables
- Achieve the best compromise between program reliability and runtime performance by appropriately choosing function argument passing by value, pointer, or reference
- Simplify the application interface to the class by defining overloaded functions
- Define data common to all objects of a class by defining static members
- Describe and explain implicit type conversions automatically done by the compiler
- Utilize an expression as something other than its natural type by explicitly converting its type
- Provide an intuitive interface to class operations by defining overloaded operators
- Define a class based on an existing class definition that inherits all members of the base class and optionally declares additional members
- Defer function call name binding until run time by declaring functions with the virtual specifier
- Define an interface common to multiple classes by defining pure virtual functions
- Declare class variables whose values cannot be changed by declaring the variables with the const qualifier
- Enable calling member functions of a const class object by declaring the functions with the const qualifier
- Remove the “constness” of pointers and references by performing a const_cast operation
- Define generic code to be specialized upon each use by defining function templates and class templates
- Program graceful handling of “exceptional” conditions
- Input and output data to and from programs
- Diagnose incorrect program behavior
- Store and manipulate data by using standard containers and standard algorithms
Software Used in This Course
- X300 Xcelium Single Core Simulator
Software Release(s)
XCELIUM2403
Modules in this Course
- C Language Review
- Object-Oriented Programming and C++
- C++ Basics
- Constructors and Destructors
- References
- Functions
- Type Conversion
- Operator Overloading
- Inheritance
- Polymorphism
- Constant Objects and Constant Functions
- Templates
- Exceptions
- Input and Output
- Debugging
- Containers and Algorithms
- Introduction to System C
- Equivalence Checking C++ for Verification
Audience
- Design Engineers
- System Engineers
- Verification Engineers
Prerequisites
You must have experience with or knowledge of the following:
- The C programming language
Related Courses
- SystemC Language Fundamentals
- SystemC Transaction-Level Modeling (TLM 2.0)
- SystemC Synthesis with Stratus HLS
Click here to view course learning maps, and here for complete course catalogs.

“Thank you very much for a great opportunity to take such cool online trainings!”-Online Course-
Oleksandr Vlasenko, Dialog Semiconductor

“Module labs and short quizzes after each module were immensely helpful. (…) It’s amazing, easy to learn and understand.”-Online Course-
Deepthi Nanduri, University of Bristol

“Thank you for the extensive and in-depth C++ course. It is packed with a lot of information and details about the C++ language. (...) it has the right amount of content as a C++ fundamentals course.”-Online Course-
Martin Abdo, Renesas