Why Study with PlanetCert?
The Latest Questions
Practice questions and exam topics aligned with the current exam objectives.
Detailed Explanations
Go beyond the answer. Master the material with comprehensive learning and professional explanations for every concept.

AI-Powered Insights
Personalized preparation guidance that adapts to your performance and identifies weak spots automatically.
Exam Information
Official specifications published by C++ Institute
Exam Format
Registration
Validity
CPA-21-02 Exam Topics and Domains
CPA-21-02 is organized into 5 weighted domains. Expect to work with compare(), insert(), size(), substr().
Types & Operators
Apply unary, binary, and ternary operators
- Apply unary, binary, and ternary operators
- understand precedence and associativity
Operator usage
Use arithmetic, relational, logical, bitwise, assignment, increment/decrement, and short-circuit operators
Ternary conditional operator
Apply the ternary conditional operator (?:)
Data types and representations
Recognize predefined standard types, data ranges, and internal representations
Literals
Use literals in various forms (decimal, octal, hexadecimal, binary, floating-point, char, bool)
String operations
Work with std::string objects, escape sequences, and string operations (e.g., compare, size, substr, insert)
Aggregates
Declare and manipulate aggregates (vectors, arrays, structures, unions, enums)
Type conversions
Understand type conversion rules, type casting, promotion, and the sizeof operator
Declaration modifiers
Apply declaration modifiers (signed, unsigned, static, const)
Control & Exceptions
Control flow statements
Use conditional statements (if, else), loops (while, do, for), and control flow keywords (break, continue, goto)
Multiple-selection constructs
Apply multiple-selection constructs (switch, case, default)
Return statement
Understand the use of the return statement to exit functions
Exception handling
Understand exception handling mechanisms (try, catch, throw, catch-all)
Exception hierarchies
Recognize exception hierarchies and use the throw() specifier in function declarations
Functions & Preprocessor Directives
Function basics
Define, declare, and invoke functions with correct syntax
Function types
Use typed and void functions with appropriate return statements
Function overloading
Overload functions and assign default parameter values
Argument passing
Pass arguments by value, reference, and pointer
Recursion
Implement recursion
Main function
Apply conventions for main() function declarations
Conditional compilation
Use preprocessor directives for conditional compilation (#if, #endif, #else, #ifdef)
Macros
Define parameterized and non-parameterized macros and understand macro expansion
Pointers
Pointer declarations
Declare and initialize pointers to variables, objects, functions, and aggregates
Pointer operations
Dereference pointers and use the address-of operator (&)
Pointer arithmetic
Perform pointer arithmetic and comparisons
Dynamic memory
Manage dynamic memory with new, delete, delete[], and avoid memory leaks
Classes & Namespaces
OOP principles
Understand OOP principles: inheritance, encapsulation, polymorphism, abstraction
Class definition
Define classes, apply access specifiers, and use class components with the :: operator and this pointer
Constructors and destructors
Declare and invoke constructors and destructors, including default, copy, and explicit constructors
Overloading
Overload class member functions and operators
Inheritance
Implement inheritance (single, multiple), manage visibility, and understand access levels
Type casting
Work with class type compatibility, casting between types, and use static_cast, dynamic_cast
Polymorphism
Override methods, use virtual and polymorphic functions, and apply const in objects and members
Friend functions
Use friend classes and functions
Namespaces
Define and use namespaces, including anonymous and named namespaces, aliases, and the scope resolution operator (::)
How do I earn this certification?
Passing CPA-21-02 earns the CPA - C++ Certified Associate Programmer certification. It sits in the C++ Programming track.
- CLA-11-03 - C Certified Associate Programmer Related C language certification
- CLP-12-01 - C Certified Professional Programmer Professional level C certification
Practice with Precision
The PlanetCert Simulator mirrors the real exam environment with authentic questions and timed pressure.
How to study for this exam?
The most effective way to prepare for CPA-21-02 is by using the PlanetCert Simulator to practice questions and review detailed explanations.
What's changed on this exam?
- ACTIVE
- Last content update: 2025-07-22
- Announcement date: 2025-07-22
- C++ Standard C++17/20 Core language features covered in exam • Release date: ongoing
- STL (Standard Template Library) Latest Basic STL concepts included
- Memory Management Smart Pointers Focus remains on raw pointers, new/delete
Who should take this exam?
This exam is typically taken by Software developers and Junior C++ programmers.
- CPE – C++ Certified Entry-Level Programmer
- Knowledge of basic programming concepts
- Understanding of object-oriented programming
- Completion of C++ Essentials 2 course