
This course includes our updated coding exercises so you can practice your skills as you learn.
See a demo
Learn to install codeblocks with mingw for c++ development, compare ide options like dev c++, and build a hello world program while understanding compiler, headers, and executables.
Define variables as storage locations with symbolic names whose values can change during program execution, illustrated by X, Y, and Z in C with integer data.
Identify and compare common value types used in programming, including boolean, int, char, float, double, and string, and understand how memory allocates for each type.
Explore how variables store information and change during program execution, and how arithmetic, remainder, relational, and logical operators, plus string concatenation, produce boolean results used to make decisions.
Learn how if statements drive conditional logic within the selection structure in C#, using boolean conditions to control which command blocks execute, with a calculator example that adds or subtracts.
Explore loops and iteration by mastering while and do-while constructs that repeat statements based on conditions. Learn how to avoid endless loops and leverage condition checks with hello world examples.
Store and access multiple integers using a one-dimensional array in C, declare the array, initialize elements, index with base 0, and print them.
Learn how two dimensional arrays store student names across classes and schools, compare with one dimensional arrays, and extend to three dimensional arrays and array size.
Explore multidimensional arrays by working with two dimensional arrays, indexing by row and column, using integer values, 3x4 examples, 0-based indexing, and calculating an average.
Explore how functions encapsulate reusable code that takes input, produces output, and enables modular software design, with examples like max value calculation, built-in and user-defined functions.
Learn how to read from and write to files across C++, Java, and Python, using modes like read, write, append, and read/write to store and process data.
Learn the foundational concepts of programming, starting with sequence—the ordered execution of code from top to bottom—and how selection and iteration control flow across languages.
Master objects and classes, inheritance for code reuse, and how each object is an instance with data, methods, identity, state, and behavior.
Explore methods in object-oriented programming, distinguishing class variables, instance variables, member variables, class methods, and instance methods, with examples of how each is defined and used.
Explore encapsulation and data hiding, two core object-oriented concepts that bind data and methods, enforce access restrictions with public private protected, and support safe interfaces and refactoring.
Dynamic dispatch drives method calls through message passing between objects, selecting code to execute. Objects exchange messages to invoke class methods, enabling uni directional communication and cross process interactions.
Explore inheritance as the core mechanism for extending and refining classes, reusing base class methods and attributes, and forming derived subclasses through single, multiple, multilevel, hierarchical, and hybrid inheritance.
Polymorphism enables subtyping, letting code operate on objects in a class hierarchy without knowing their type. Each subclass implements its own draw or sound behavior while sharing a common interface.
Explore generalization and specification in object-oriented design by comparing is-a relationships and specialized subclasses, and learn when to generalize or specialize to structure classes in a team project.
Explore associations and links, and understand one-to-one, one-to-many, and many-to-many cardinalities in object-oriented programming and databases. See practical examples like school–student, employee–job, and family relationships.
Develop C++ programming skills with a structured CPA study resource.
The recorded course follows CPA-21-01 material. Certification versions change, so compare the curriculum with the C++ Institute current CPA syllabus before planning an exam. This course supports study and practice; it does not guarantee a pass or confer the vendor certification.
What you will explore
Explore compilation, scalar data types, operators, control flow, streamed input and output, functions, overloading, strings, namespaces and exceptions. Build your understanding of classes, constructors, inheritance, polymorphism, virtual methods and abstract classes.
How to study
Work through the relevant lessons in sequence, pause to reproduce the examples, and keep a short record of the concepts you can explain without looking at your notes. When an example produces an unexpected result, reduce it to a smaller case and compare what you expected with what actually happened. This makes revision more useful than simply replaying a demonstration.
Practical application
Write a small class-based program and explain how its methods protect valid state. Test ordinary values and invalid inputs, then trace which code path runs. Use an error log to connect each mistake to the relevant language rule.
Use the course as a structured learning resource at your own pace. Revisit difficult topics, write down questions, and connect each concept to a small example of your own. Before moving on, explain your solution, check a normal case and an edge case, and note one limitation. The goal is to develop understanding that you can transfer to another problem, rather than memorize a single answer.
Check the curriculum and prerequisites to decide whether the course fits your current knowledge and learning goals. Recorded software interfaces and third-party services can change; consult the provider's current documentation when setting up your environment.