It is used to prevent a specific constructor from being called implicitly when constructing an object . For example, without the explicit keyword, the following code is valid C++: Array a = 10; This will call the Array single-argument constructor with the integer argument of 10.