In C++, which operator is right-to-left associative?

  • Addition Operator (+)
  • Assignment Operator (=)
  • Multiplication Operator (*)
  • Ternary Conditional Operator (?)
The ternary conditional operator (a ? b : c) in C++ is right-to-left associative. This means that it evaluates from right to left, making it different from most other operators in the language.

Lisa wants to check the day of the week and execute different code for each day. Which control structure would be the most appropriate for her use?

  • For Loop
  • If-Else Statements
  • Switch Statement
  • While Loop
For Lisa's scenario, the most appropriate control structure is the "Switch Statement." A switch statement allows you to evaluate a single expression against multiple possible constant values, making it ideal for executing different code blocks based on the day of the week.

When using a switch statement, if a case doesn't contain a break, it will cause a behavior known as ______.

  • exception
  • fall-through
  • overflow
  • recursion
In C++, when a case within a switch statement doesn't contain a break statement, it leads to fall-through behavior. This means that execution will continue from the matched case statement to the subsequent case(s) until a break is encountered or the switch block ends. It's a powerful feature for handling multiple cases with the same code, but it should be used intentionally.

In C++, the ______ keyword is used to specify a block of code that should be executed no matter whether an if condition is true or false.

  • Catch
  • Do
  • Else
  • Finally
In C++ and many other programming languages, the "else" keyword is used to specify a block of code that should be executed when the condition in an "if" statement is false. It's commonly used to provide an alternative action when the condition isn't met.

When you provide the necessary details about a function without its actual implementation, it's called function ______.

  • Declaration
  • Invocation
  • Definition
  • Execution
When you provide the necessary details about a function without its actual implementation, it's called "Definition." In a function definition, you specify the function's name, return type, parameter list, and what the function should do when called. The other options have different meanings: Declaration is a statement that tells the compiler about a function's name and signature, Invocation is the act of calling a function, and Execution is the process of running the function's code.

Can we use default arguments for both member methods of a class and standalone functions?

  • No, for neither
  • Yes, for both
  • Yes, for member methods only
  • Yes, for standalone functions only
Yes, for both. In C++, you can use default arguments for both member methods of a class and standalone (non-member) functions. Default arguments provide flexibility when calling functions or methods by allowing you to omit some arguments if they have defaults defined.

In C++, which operator is used for member selection in pointers?

  • -> (Arrow)
  • . (Dot)
  • :: (Scope Resolution)
  • N/A
The -> (Arrow) operator is used in C++ to access members of an object or struct through a pointer. For instance, if you have a pointer to a struct ptr and want to access its member x, you can do so using ptr->x.

John writes the entire logic of his function within the header file. What part of the function did he write?

  • Function Call
  • Function Header
  • Function Implementation
  • Function Prototype
John wrote the function implementation within the header file. The function implementation contains the actual logic and code that defines how the function performs its task. Writing the entire logic in the header file is not a typical practice and may lead to code organization issues.

Sarah has a library of functions, and she wants to share only what the functions do, not how they do it. What should she share with others?

  • Function Comments
  • Function Declarations
  • Function Definitions
  • Function Parameters
Sarah should share the Function Declarations with others. Function Declarations provide information about the name, parameters, and return type of a function without revealing the actual implementation details. This allows users of the library to understand how to use the functions without being concerned about their internal workings.

Robert wants to write a function that can either accept two parameters or three. What feature of C++ should he use to achieve this?

  • Function Overloading
  • Function Pointers
  • Template Functions
  • Inheritance
Robert should use "Function Overloading" to write a function that can accept either two or three parameters. Function overloading allows him to define multiple functions with the same name in the same scope but with different parameter lists. The compiler will then determine which function to call based on the number or types of arguments passed to it. This flexibility enables Robert to create a single function name with different parameter options.