OpenExamsFREE PRACTICE — ANY EXAM

CPA – C++ Certified Associate Programmer — Information & Free Practice

US · Examination information

100 free questions · Answer explanations · No signup required

Start free practice →

CPA – C++ Certified Associate Programmer

Provider
Pearson VUE testing centers / OnVUE online proctoring
Format
Single-choice questions, multiple-choice questions; English
Exam questions
Total questions: 40; Scored questions: 40.
Time limit
65 minutes (exam) + approx. 10 minutes (Non-Disclosure Agreement/Tutorial)
Passing score
70% cumulative weighted score; up to 200 points; not an average of block scores
Exam fee
From USD 325 (Exam); from USD 375 (Exam + Retake); regional pricing may vary
Examination outline
  • Types & Operators (24.5%)
    • Apply unary, binary, and ternary operators; understand precedence and associativity.
    • Use arithmetic, relational, logical, bitwise, assignment, increment/decrement, and short-circuit operators.
    • Apply the ternary conditional operator (?:).
    • Recognize predefined standard types, data ranges, and internal representations.
    • Use literals in various forms (decimal, octal, hexadecimal, binary, floating-point, char, bool).
    • Work with std::string objects, escape sequences, and string operations (e.g., compare, size, substr, insert).
    • Declare and manipulate aggregates (vectors, arrays, structures, unions, enums).
    • Understand type conversion rules, type casting, promotion, and the sizeof operator.
    • Apply declaration modifiers (signed, unsigned, static, const).
  • Control & Exceptions (18%)
    • Use conditional statements (if, else), loops (while, do, for), and control flow keywords (break, continue, goto).
    • Apply multiple-selection constructs (switch, case, default).
    • Understand the use of the return statement to exit functions.
    • Understand exception handling mechanisms (try, catch, throw, catch-all).
    • Recognize exception hierarchies and use the throw() specifier in function declarations.
  • Functions & Preprocessor Directives (17.5%)
    • Define, declare, and invoke functions with correct syntax.
    • Use typed and void functions with appropriate return statements.
    • Overload functions and assign default parameter values.
    • Pass arguments by value, reference, and pointer.
    • Implement recursion.
    • Apply conventions for main() function declarations.
    • Use preprocessor directives for conditional compilation (#if, #endif, #else, #ifdef).
    • Define parameterized and non-parameterized macros and understand macro expansion.
  • Pointers (11%)
    • Declare and initialize pointers to variables, objects, functions, and aggregates.
    • Dereference pointers and use the address-of operator (&).
    • Perform pointer arithmetic and comparisons.
    • Manage dynamic memory with new, delete, delete[], and avoid memory leaks.
  • Classes & Namespaces (29%)
    • Understand OOP principles: inheritance, encapsulation, polymorphism, abstraction.
    • Define classes, apply access specifiers, and use class components with the :: operator and this pointer.
    • Declare and invoke constructors and destructors, including default, copy, and explicit constructors.
    • Overload class member functions and operators.
    • Implement inheritance (single, multiple), manage visibility, and understand access levels.
    • Work with class type compatibility, casting between types, and use static_cast, dynamic_cast.
    • Override methods, use virtual and polymorphic functions, and apply const in objects and members.
    • Use friend classes and functions.
    • Define and use namespaces, including anonymous and named namespaces, aliases, and the scope resolution operator (::).
Examination sources

Related license preparation

This examination may be required or accepted as an alternative, depending on the license and application pathway.