Junior — Middle
What is the reason for using the explicit keyword in programming?
sobes.tech AI
Answer from AI
The explicit keyword in C++ is used to prevent implicit type conversions when calling constructors with a single parameter. If a constructor is marked as explicit, the compiler will not automatically use it for type conversions, which helps avoid unexpected errors.
For example:
class MyClass {
public:
explicit MyClass(int x) { /*...*/ }
};
MyClass obj = 10; // Compilation error because the constructor is explicit
MyClass obj2(10); // Correct
Thus, explicit increases code safety by making conversions explicit.