导读 大家好,我是小典,我来为大家解答以上问题。explicit完整版,explicit很多人还不知道,现在让我们一起来看看吧!1、显式,C++提供了关键字...
大家好,我是小典,我来为大家解答以上问题。explicit完整版,explicit很多人还不知道,现在让我们一起来看看吧!
1、显式,C++提供了关键字explicit,声明为explicit的构造函数不能在隐式转换中使用
2、class Test1
3、{
4、public:
5、 Test1(int n) { num = n; } //普通构造函数
6、private:
7、 int num;
8、};
9、class Test2
10、{
11、public:
12、 explicit Test2(int n) { num = n; } //explicit(显式)构造函数
13、private:
14、 int num;
15、};
16、int main()
17、{
18、 Test1 t1 = 12; //隐式调用其构造函数, 成功
19、 Test2 t2 = 12; //编译错误,不能隐式调用其构造函数
20、 Test2 t3(12); //显式调用成功
21、 return 0;
22、}
23、都是复制粘贴的,因为问题比较简单,怎么省事怎么来了。
本文到此讲解完毕了,希望对大家有帮助。