Default arguments should be avoided in virtual functions as they don’t behave as most people expect and can lead to ________.
- Code Reuse
- Improved Debugging
- Increased Performance
- Runtime Errors
Default arguments in virtual functions can lead to runtime errors because the default argument values are determined at compile-time, not runtime. This can result in unexpected behavior when overriding virtual functions in derived classes.
Anna wants to write a program that counts the number of students in a school. Which data type should she use for the count?
- bool
- float
- int
- string
Anna should use the 'int' (integer) data type. Integers are used for storing whole numbers, which is ideal for counting discrete items like the number of students. It provides efficient memory usage and supports mathematical operations.
Overloading works in tandem with ______, a feature of OOP, that allows entities to take on more than one form.
- Abstraction
- Encapsulation
- Inheritance
- Polymorphism
Overloading works in tandem with Polymorphism, a feature of Object-Oriented Programming (OOP), that allows entities to take on more than one form. Polymorphism enables the selection of the appropriate function or behavior at runtime, enhancing code flexibility and reusability. Function overloading is an example of compile-time polymorphism.
Kimberly is debugging a program where a loop intended to run 10 times is running indefinitely. Which part of the loop should she particularly inspect for possible logical errors?
- Loop body
- Loop condition
- Loop increment
- Loop initialization
Kimberly should inspect the loop condition. If the loop condition is not properly defined or is always true, the loop will run indefinitely. She should ensure that the condition is correctly set to run the loop the intended number of times (in this case, 10).
Max wants to compare two integers to see if they are not equal. Which operator will allow him to do this?
- !=
- <=
- ==
- >=
Max can use the '!=' (not equal) operator to compare two integers and check if they are not equal. The '==' operator is used to check for equality, while the other operators are used for different types of comparisons.
David is noticing that a certain piece of computation inside his loop doesn't need to be executed every iteration. What can he use to skip that computation for specific iterations?
- continue statement
- for loop
- if statement
- switch statement
David can use the continue statement to skip a certain piece of computation for specific iterations within his loop. When continue is encountered, it causes the program to skip the remaining code within the current iteration and move on to the next iteration of the loop. This can improve the efficiency of the loop when certain conditions don't require the computation to be executed.
The ______ operator is overloaded to perform array subscripting.
- ()
- ->
- =
- []
The [] operator is overloaded to perform array subscripting in C++. This allows you to access individual elements of an array or a user-defined data structure as if it were an array. Overloading [] enables custom behavior when indexing objects.
How does the continue statement affect the execution of a loop?
- It pauses the loop temporarily.
- It restarts the loop from the beginning.
- It skips the current iteration and continues with the next iteration.
- It terminates the loop immediately.
The continue statement in a loop skips the current iteration and continues with the next iteration. It does not terminate the loop or restart it. This is useful when you want to skip certain iterations based on a condition but continue the loop.
For a given function, once you start providing default values for arguments from the right, you cannot skip providing default values for subsequent arguments on the ______.
- Left
- Middle
- None of the above
- Right
For a function with default argument values, you can only provide default values for arguments starting from the right and not in the middle or left. Skipping arguments without default values in the middle would lead to a compilation error.
What is the main advantage of function overloading?
- Better memory management
- Faster execution of functions
- Improved code readability and reusability
- Smaller executable file size
The main advantage of function overloading is improved code readability and reusability. It allows you to use the same function name for logically related operations, making your code more intuitive and easier to understand. It also promotes code reusability by reducing the need to create distinct function names for similar tasks.