What is the purpose of the explicit keyword on a multi-argument constructor?

In C++11 multi-parameter constructors can be implicitly converted to with brace initialization.

However, before C++11 explicit only applied to single-argument constructors. For multiple-argument constructors, it was ignored and had no effect.

Leave a Comment