zoukankan      html  css  js  c++  java
  • 深拷贝和浅拷贝

      对于含指针的类,当编译器调用默认的拷贝构造函数时,会将对象的指针所指向的地址拷贝给另一个对象的指针所指向的地址,这个时候就发生了浅拷贝。浅拷贝所存在的问题是:如果只是指针指向的地址进行拷贝,那么两个指针将指向同一片内存空间,当其中一个对象被销毁时,对应的析构函数会delete掉这片内存,那么另一个对象的指针就会成为野指针,如果这时另一个对象也进行了析构操作,则对野指针进行delete操作,则会发生一个严重的问题:内存泄漏。

      深拷贝是将指针所指的值一位一位的拷贝到目标对象的内存里面,即使发生析构,也不会影响到另一个对象的指针所指向的内存单元中去,它们的指针与内存空间时完全独立的。

  • 相关阅读:
    编程经验
    GIS业务逻辑
    算法逻辑
    js中arguments的作用
    C#基础及记忆概念
    POI创建Excle
    数据库元数据分析Demo
    c3p0写连接池 Demo
    dbutils的使用Demo
    dbcp写连接池 Demo
  • 原文地址:https://www.cnblogs.com/leoncumt/p/10428883.html
Copyright © 2011-2022 走看看