首页 > 编程语言 > 详细

C++之单参数构造函数隐式转换

时间:2021-09-03 18:34:36      阅读:16      评论:0      收藏:0      [点我收藏+]
 1     BaseClass oBaseClass = "隐式转换构造函数调用";
 2 
 3     BaseClass oBaseClass2 = oBaseClass;
 4     BaseClass oBaseClass3("显示调用构造函数");
 5     oBaseClass3= oBaseClass2;
 6 
 7     auto testFunc = [=](BaseClass oBase)
 8     {
 9 
10     };
11 
12     testFunc(oBaseClass);
13     cout << "===============分割线===========" <<endl;
14     auto testFunc2 = [=](BaseClass &oBase)
15     {
16 
17     };
18     testFunc2(oBaseClass);
技术分享图片
BaseClass oBaseClass2 = oBaseClass; 调用的是拷贝构造函数

   引用类型不会调用构造函数;

   防止隐性转换,可以加explicit 修饰修饰

 

C++之单参数构造函数隐式转换

原文:https://www.cnblogs.com/xzlq/p/15222614.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!