专注于 股票数据格式 MT4智能交易系统开发 电子海图 VTS(S52 S57 AIS)

http://alantop.5166.info 电子海图开发QQ群 40968136

专注于 股票数据格式 MT4智能交易系统开发 电子海图 VTS(S52 S57 AIS)
随笔 - 307, 文章 - 0, 评论 - 622, 引用 - 0
数据加载中……

深拷贝,浅拷贝

深拷贝和浅拷贝的定义可以简单理解成:如果一个类拥有资源(堆,或者是其它系统资源),当这个类的对象发生复制过程的时候,这个过程就可以叫做深拷贝,反之对象存在资源,但复制过程并未复制资源的情况视为浅拷贝。

浅拷贝资源后在释放资源的时候会产生资源归属不清的情况导致程序运行出错。

        Test(Test &c_t)是自定义的拷贝构造函数,拷贝构造函数的名称必须与类名称一致,函数的形式参数是本类型的一个引用变量,且必须是引用。

当用一个已经初始化过了的自定义类类型对象去初始化另一个新构造的对象的时候,拷贝构造函数就会被自动调用,如果你没有自定义拷贝构造函数的时候,系统将会提供给一个默认的拷贝构造函数来完成这个过程,上面代码的复制核心语句就是通过Test(Test &c_t)拷贝构造函数内的p1=c_t.p1;语句完成的。

        

posted on 2006-05-04 08:20 AlanTop 阅读(581) 评论(0)  编辑 收藏 引用 所属分类: C++



标题  
姓名  
主页
验证码 *
内容(提交失败后,可以通过“恢复上次提交”恢复刚刚提交的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
[使用Ctrl+Enter键可以直接提交]
.NET频道  博客园社区  闪存
网站导航:



专注于 股票数据格式 MT4智能交易系统开发 电子海图 VTS(S52 S57 AIS)