给对象数组用无名对象赋初始值时的问题解决方案

1.当你在一个.cpp文件中申明一个类后,在同.cpp文件的主函数中去使用对象数组,给对象数组用无名对象赋初始值没有任何问题。

point2 p[3] = { point2(1,1),2 };

2.当其它.cpp文件也想使用该类给对象数组用无名对象赋初始值时,出现了如下问题。

E0334        类 "point" 没有适当的复制构造函数        

明明有复制构造函数啊,该类的头文件也没有问题。

这是由于point2(1,1)无名对象的输出是const类型的,而定义的复制构造函数的形参不是const类型造成的。

所以只需要重载一下复制构造函数就可以了,别忘了声明处也要加const

1.

2.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值