15 to 30 random questions in 15 to 30 minutes, by the level you choose: classes, stl, templates, smart pointers, move semantics, modern c++. After you submit you get your score, your strong and weak topics, and the right answer with an explanation for every question.
Want to revise first? Read the C++ interview questions and answers.
The test covers 12 topics across three levels. Each attempt picks 15 to 30 questions at random, by the level you choose, so every attempt is different.
One question from each level, the way they appear in the test. A new set comes on the 1st of every month. Try it, then open the answer.
struct Empty {};
int main() {
std::cout << sizeof(Empty) << "\n";
} Answer: 1. C++ never gives a complete object size 0, so that two different objects always have different addresses. GCC makes an empty class 1 byte. (Empty bases can still take no space, which is a different rule.)
Answer: const Widget&. Smart pointer parameters are about ownership. A function that only uses the object should not care how it is owned. A shared_ptr by value adds an atomic count change, and a unique_ptr by value takes ownership away.
struct View {
const std::string& text;
};
int main() {
std::string a = "x", b = "y";
View v1{a}, v2{b};
v1 = v2; // A
View v3 = v1; // B
return v3.text.size() != 1;
} Answer: The line marked A. A reference member cannot be re-seated, so the compiler deletes View's copy assignment and v1 = v2 is an error. Copy construction just binds the new reference to the same string, so B is fine.
Take the full C++ mock test: 15 to 30 questions and 15 to 30 minutes, by level.
A question counts as right only when you pick exactly the right option, or all the right options where it says so; a question left blank counts as wrong. Your score is the share of the test's questions you got right (15 to 30, by level). The result also scores every topic, so you know what to revise before the interview.
Yes. The C++ mock test is free. You need a free CoreHRx Jobs account to start it, so your score and the topics to work on are saved.
It depends on the level: Fresher has 15 questions in 15 minutes, Intermediate has 20 questions in 20 minutes, Experienced has 30 questions in 30 minutes. They are multiple-choice questions picked at random from a larger bank of C++ questions at your level, so every attempt is different.
The questions cover Inheritance and Polymorphism, STL Containers, Constructors and Destructors, Modern C++, References and Pointers, STL Algorithms and Iterators, Exceptions, Move Semantics, OOP and Classes, Smart Pointers and RAII, Templates, Operator Overloading. Your result shows how you did in each topic.
Fresher if you are a student or have less than a year of experience, Intermediate for 1 to 5 years at work, and Experienced for 5 years or more.
Only your best C++ score, and only when it is 60% or more. It shows on the job applications you send on CoreHRx. Lower scores stay private.
Yes, up to 10 tests a day. Each attempt picks questions you have not seen recently first.