c++ explicit 关键字 用法: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19class A { explicit A(int a) {} } A a(1); 错误: A a = 1; 错误: A a(1, 2); 错误: A a = {1, 2}; 错误: A a{1, 2}; 错误: A a = (A)1; 错误: A a = (A){1, 2}; 这样在创建对象的时候,只能使用显式的方式创建,不能使用隐式的方式创建。 这样可以避免一些不必要的错误。对创建对象的方式进行限制。