In C++, which function can be used to test whether the end of a file (EOF) has been reached? 

  • checkEOF() 
  • testEnd() 
  • eof() 
  • isTerminated()
The eof() function is used to test if the end-of-file (EOF) has been reached on a file stream in C++. It returns true if the EOF flag for the stream is set. The other options are not standard functions for this purpose in C++.

Which loop is NOT compatible with the break statement in C++? 

  • for loop 
  • do-while loop 
  • while loop 
  • None, all loops support break
All loops in C++ (for, while, and do-while) support the break statement. The break statement is a control flow statement that can be used to exit a loop prematurely when a specific condition is met, irrespective of the loop's primary condition.

Which year was the C++ programming language introduced? 

  • 1970 
  • 1980 
  • 1983 
  • 1995
C++ was introduced in 1983 by Bjarne Stroustrup as an enhancement to the C language.

The syntax to declare a pure virtual function is to follow the function declaration with _______. 

  • '= 0' 
  • 'virtual' 
  • 'override' 
  • '= 1'
In C++, a pure virtual function is declared by assigning 0 in its declaration. The syntax is virtual function_name() = 0;. It indicates that the function doesn't have a body in this class and must be implemented in any non-abstract derived class.

What happens to the control flow of a program when the break statement is encountered inside a while loop? 

  • The program exits 
  • The while loop terminates and control moves to the next statement after the loop 
  • The loop skips to the next iteration 
  • The loop starts from the beginning
When a break statement is encountered inside a while loop, the loop terminates immediately and the control moves to the next statement following the loop, regardless of the loop's condition.

You are developing a game where numerous conditions dictate the character's state (e.g., running, jumping, idle, etc.). To manage these states efficiently, which approach might be preferable? 

  • Use multiple if-else statements 
  • Use a state pattern 
  • Use global variables 
  • Implement recursion
The State Pattern allows an object to change its behavior when its internal state changes. This would be ideal for game character states as it encapsulates state-specific behaviors and transitions, making the code more organized, scalable, and easy to extend with new states.

Which function is used to open a file in C++? 

  • openFile() 
  • create() 
  • open() 
  • initiateFile()
The open() function is used in C++ to open a file. It is a member function of the file stream classes (like fstream, ifstream, ofstream). By providing the filename and mode, a user can access or modify the contents of a file.

Which keyword is used to define a template in C++? 

  • class 
  • public 
  • private 
  • template
The template keyword is used to define templates in C++. Templates allow functions and classes to operate with generic types, enabling more flexible and reusable code structures.

How can you prevent an object of a C++ class from being copied? 

  • Use private constructors 
  • Make the class abstract 
  • Declare the copy constructor as private 
  • Use an interface
By declaring the copy constructor (and the assignment operator) as private, you ensure that they cannot be invoked from outside the class, effectively preventing the creation of a copy of an object of the class. This is a common technique for the Singleton pattern.

What is the impact of using a friend function on encapsulation in C++? 

  • It enhances it. 
  • It doesn't affect it at all. 
  • It undermines it. 
  • It strengthens the class hierarchy.
Friend functions can access the private and protected members of a class. This can lead to a breach in encapsulation as they can potentially expose or modify class internals outside the usual member function framework. This undermines the very purpose of encapsulation.