当前位置: 首页 > news >正文

中国十大流量网站广州公司注册核名查询系统官网

中国十大流量网站,广州公司注册核名查询系统官网,企业所得税优惠,新乡网站建设哪家实力强多态使用时#xff0c;如果子类中有属性开辟到堆区#xff0c;那么父类指针在释放时无法调用到子类的析构代码 解决方式#xff1a;将父类中的析构函数改为虚析构或者纯虚析构 虚析构和纯虚析构共性#xff1a; 1.可以解决父类指针释放子类对象 2.都需要有具体的函数实现…多态使用时如果子类中有属性开辟到堆区那么父类指针在释放时无法调用到子类的析构代码 解决方式将父类中的析构函数改为虚析构或者纯虚析构 虚析构和纯虚析构共性 1.可以解决父类指针释放子类对象 2.都需要有具体的函数实现 虚析构和纯虚析构区别 如果是纯虚析构该类属于抽象类无法实例化对象 虚析构语法 virtual ~类名(){} 纯虚析构语法 virtual ~类名() 0; 类名::~类名(){} 代码示例 #includeiostream using namespace std; #includestringclass Animal { public:Animal(){cout Animal的构造函数调用 endl;}//利用虚析构可以解决 父类指针释放子类对象时不干净的问题/*virtual ~Animal(){cout Animal的虚析构函数调用 endl;}*///纯虚析构 需要声明也需要实现 虚析构和纯虚析构只能有一个故将上面注释//有了纯虚析构之后这个类也属于抽象类无法实例化对象virtual ~Animal() 0;//纯虚函数virtual void speak() 0;};Animal::~Animal() {cout Animal的纯虚析构函数调用 endl; }class Cat :public Animal { public:Cat(string name){cout Cat构造函数调用 endl;m_Name new string(name);//堆区创建属性}virtual void speak(){cout *m_Name小猫在说话 endl;}~Cat()//释放{if (m_Name ! NULL){cout Cat析构函数调用 endl;delete m_Name;m_Name NULL;}}string *m_Name; };void test() {Animal* animal new Cat(Tom);animal-speak();//父类指针在析构时候 不会调用子类中析构函数 导致子类如果有堆区属性 出现内存泄露delete animal; }int main() {test();return 0; }总结 1.虚析构或纯虚析构都是用来解决通过父类指针释放子类对象 2.如果子类中没有堆区数据可以不写为虚析构或纯虚析构 3.拥有纯虚析构函数的类也属于抽象类
http://www.w-s-a.com/news/790111/

相关文章:

  • 最好的网站建设用途合肥企业网站建设
  • 计算机编程与网站建设好玩的网页传奇
  • 商务网站建设找哪家本地推广找哪些网站
  • 手机h5网站企业网站管理系统的运维服务
  • 南京建设网站公司网站游戏怎么制作
  • 成都建站程序苏州市建设局招标网站首页
  • 自助建网站市场公司起名大全2020最新版的
  • dede网站模板北京 网站开发 大兴
  • 网站优化师招聘建设牌安全带官方网站
  • 南京网站建设网站做视频网站用什么格式
  • 普陀做网站价格wordpress接入qq互联
  • 网站2级页面怎么做杭州哪家做外贸网站
  • 做了静态网站怎么显示在互联网上营销策划与运营方案
  • 常见的英文网站国内军事新闻大事件
  • 傻瓜式做网站程序微信怎么开公众号
  • c2c电商网站wordpress仿36kr主题
  • 网站建设公司开发免费图纸网站
  • 一个网站页面设计多少钱做预算查价格的网站是哪个
  • 鳌江哪里有做网站百度短链接在线生成
  • 有没有什么做水利资料的网站杭州建设信用平台
  • 电子商务网站建设及推广方案论文wordpress无法显示文章
  • 建设工程监理网站前端和后端分别需要学什么
  • 公司网站制作效果国内最好的在线网站建设
  • 徐州好点的做网站的公司有哪些wordpress 工具插件下载
  • 如何用云服务器建设网站微网站免费开发平台
  • 官网的网站设计公司做网站需要准备哪些东西
  • 程序员和做网站那个好找工作wordpress二维码 插件
  • 湖南城市建设技术学院官方网站青海省建设局网站
  • 响应式网站有什么区别百度网站官网
  • 金华企业自助建站系统长沙建站公司模板