Why the C++ tests are not multiple choice?
Usually software engineers have to deal with some unfamiliar code. Eventually they read, debug and understand it without having any other option. These tests are designed to be as close as possible to the real life situations.
Why some questions do not compile?
We use C++11 new features in our C++ questions. If your compiler has older version it may not support new features and cannot compile the question. For Microsoft Visual Studio update to latest version (Express version is available for free), for g++ update to version 4.8.1 or higher and for clang update to version 3.4 or higher.
Several questions are implementation specific, what should be the correct answer for those?
Indeed we have a few questions in our free tests which are implementation specific. However these cases are simple and all major C++ compilers provide a common and the most efficient implementation for them. The correct answer is based on the common (also the most reasonable) implementation.
All questions in the paid tests have exact answers.
Why the answer of my locally compiled and run C++ question does not match to the answer online?
Compiler optimization, debug information and some other specific options (like data storage alignment) can affect the question answer. Make sure the question is compiled with all these options turned off.
Can I compile and run design pattern questions?
The code presented in the design pattern questions is compiled without any errors or warnings. However it may not be linked or executed since the main() function is not provided or the definitions of functions not essential for the assumed design pattern are not included.