首页 > 编程语言 > 详细

C++的拷贝函数

时间:2019-05-18 17:10:20      阅读:90      评论:0      收藏:0      [点我收藏+]

  问题:重写了一个继承于QWidget的类,在主程序中使用了这个类,用到了vector存储它的对象。结果编译的时候就出错了,错误信息:error C2248: “QWidget::QWidget”: 无法访问 private 成员(在“QWidget”类中声明),此诊断出现在编译器生成的函数“StuffWid::StuffWid(const StuffWid &)”中。

 一开始以为是使用了私有的成员方法,看了几遍确认不是。后来想到在主程序中用到了vector,以及用到了它的emplace_back()方法。往容器里添加对象是会调用拷贝构造函数的,重写的类没有声明拷贝函数,又因父类的默认拷贝构造函数是private的,所以报错。声明拷贝构造函数之后,编译器不再报错。

  

 

C++的拷贝函数

原文:https://www.cnblogs.com/bujidao/p/10886276.html

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